Bonjour j'apprends actuellement Django en suivant un cours.
Comme demandé au début de la partie "Liaisons entre modèles" ; j'ai modifié le fichier \crepes_bretonnes\blog\models.py pour y ajouter :
-> la classe Categorie (lignes 5 à 9)
-> la clé étrangère dans la classe Article (ligne 17) :
categorie = models.ForeignKey('Categorie', on_delete=models.CASCADE)
Ensuite dans cmd j'ai fait :
-> python manage.py makemigrations
Là, comme j'avais déjà des entrées présentes dans la table "Article", Django me demande que faire pour ces lignes déjà existantes.
Je choisis l'option "1" pour attribuer une catégorie par défaut pour les entrée déjà créées. Puis j'entre encore "1" pour donner la première catégorie à ces entrées.
-> python manage.py migrate
Là l'erreur suivante apparaît :
bad_value, referenced_table_name, referenced_column_name
django.db.utils.IntegrityError: The row in table 'blog_article' with primary key '1' has an invalid foreign key: blog_article.categorie_id contains a value '1' that does not have a corresponding value in blog_categorie.id.
Est-ce lié au fait que ma table Categorie ne contient aucune entrée ?
Merci à vous.
Partager