J'ai signalé un problème similaire mais il n'a pas pu être résolu. Je crée une base de données relationnelle d'utilisateurs et de groupes mais pour une raison quelconque, je ne peux pas insérer correctement des données de test avec des appareils. Voici un exemple du schéma:Problème Symfony fk lors de l'insertion
User:
actAs: { Timestampable: ~ }
columns:
name: { type: string(255), notnull: true }
email: { type: string(255), notnull: true, unique: true }
nickname: { type: string(255), unique: true }
password: { type: string(300), notnull: true }
image: { type: string(255) }
Group:
actAs: { Timestampable: ~ }
columns:
name: { type: string(500), notnull: true }
image: { type: string(255) }
type: { type: string(255), notnull: true }
created_by_id: { type: integer }
relations:
User: { onDelete: SET NULL, class: User, local: created_by_id, foreign: id, foreignAlias: groups_created }
FanOf:
actAs: { Timestampable: ~ }
columns:
user_id: { type: integer, primary: true }
group_id: { type: integer, primary: true }
relations:
User: { onDelete: CASCADE, local: user_id, foreign: id, foreignAlias: fanhood }
Group: { onDelete: CASCADE, local: group_id, foreign: id, foreignAlias: fanhood }
Et voici les données que j'essaie d'entrer:
User:
user1:
name: Danny
email: [email protected]
nickname: danny
password: f05050400c5e586fa6629ef497be
Group:
group1:
name: Mets
type: sports
FanOf:
fans1:
user_id: user1
group_id: group1
Je continue à obtenir cette erreur:
SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails (`krowdd`.`fan_of`, CONSTRAINT `fan_of_user_id_user_id` FOREIGN KEY (`user_id`) REFERENCES `user` (`id`) ON DELETE CASCADE)
Les utilisateurs et les groupes sont étant clairement créé avant le "fanhood" est alors pourquoi je reçois cette erreur ??
Merci!
ÉTONNANT !! J'ai essayé de comprendre cela pendant 2 semaines! – Danny
+1 de moi. Je pensais que j'avais fait cela, mais la capitalisation compte! –
Juste génial !! Merci! –