web-dev-qa-db-fra.com

Django: insérer une ligne dans la base de données

Je suis nouveau à Django. J'ai créé une table en insérant un modèle dans models.py.

Maintenant, je veux insérer une ligne dans la base de données - table Dodavatel. Je sais que je dois créer un objet avec des attributs comme colonnes. Mais je ne sais pas où dois-je mettre ce code. Dans models.py?

Voici mon modèle:

class Dodavatel(models.Model):
    nazov = models.CharField(default='', max_length=255)
    dostupnost = models.IntegerField(default=0)

Voici le code pour insérer une ligne:

p = Dodavatel(nazov='Petr', dostupnost=1)
p.save()

Où dois-je mettre ce code?

17
Milano

Si vous souhaitez uniquement tester rapidement vos modèles, vous pouvez démarrer un shell interactif et y exécuter votre code.

python manage.py Shell

La commande ci-dessus démarre un shell interactif python initialisé avec vos paramètres de projet Django.

Ensuite, vous pouvez faire quelque chose comme:

from your_app_name.models import Dodavatel
p = Dodavatel(nazov='Petr', dostupnost=1)
p.save()

Je ne recommande pas d'utiliser ce code directement dans une vue. Au lieu de cela, pour créer un élément, j'utiliserais une vue basée sur une classe comme CreateView.

25
Luca