I'm new in Django. I've created a table by insert model into models.py
.
Now, I want to insert a row into the database - table Dodavatel
. I know, that I have to create an object with attributes as columns. But I don't know where should I put this code. In models.py
?
This is my model:
class Dodavatel(models.Model):
nazov = models.CharField(default='', max_length=255)
dostupnost = models.IntegerField(default=0)
This is the code for inserting a row:
p = Dodavatel(nazov='Petr', dostupnost=1)
p.save()
Where should I put this code?
If you only want to quick test your models you can start an interactive shell and execute your code there.
python manage.py shell
The above command starts a python interactive shell initialized with your Django project settings.
Then you can do something like:
from your_app_name.models import Dodavatel
p = Dodavatel(nazov='Petr', dostupnost=1)
p.save()
I do not recommend to use that code directly inside a view. Instead to create an item I would use a class based view like CreateView
.
For manual inserting data to table for testing purpose
Execute this command for creating Dodavatel in the database
python manage.py makemigrations
python manage.py migrate
Now you can see the table created in the database
Then type for open python project REPL:
python manage.py shell
add this code in the repl
from everych.cheese.models import Dodavatel
dodavel = Dodavatel.objects.create(nazov="hi", dostupnost=3)
You can use python manage.py shell_plus
instead of python manage.py shell
.so you didn't want to add the line from everych. cheese. models import Dodavatel
it automatically imported.
here everych my project name
cheese is the application name
change as your project and application name
After the above code is executed data will be inserted into the table output:-
Here just inserting data you must add a table using the above step.
python manage.py shell_plus
code
dat = Dodavatel(nazov="Petr", dostupnost=1)
dat.save()
Output:
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With