Les relations simple entre table, comment les gères t-on ?
Salut,
J'ai 2-3 Jours devant moi et je voulais me remettre à Symfony. Mais j'ai même pas encore produit mes modules que je merde déjà :cry:
Je tente de faire un suivi du personnel pour les visites médicales un truc que j'ai déjà sur Excel mais qui commence à être saturé.
Enfin Bref, J'ai 2 tables une Personnel et l'autre VM j'ai monté mon schéma.yml comme suit :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| tablePersonnel:
actAs: {Timestampable: ~ }
columns:
name: {type: string(255), notnull:true}
lastname: {type: string(255), notnull:true}
company: {type: integer, notnull:true}
dateNaissance: {type: timestamp, notnull:false}
dateEmbauche: {type: timestamp, notnull:false}
fonction: {type: integer, notnull:false}
tableVisiteMedical:
actAs: {Timestampable: ~ }
columns:
perso_id: {type: integer, notnull:false}
lastVm: {type: timestamp, notnull:false}
validite: {type: timestamp, notnull:false}
etat: {type: boolean, default:true}
relations:
Personnel:
class: tablePersonnel
local: perso_id
foreign: id |
Et mon fixtures.yml :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
tablePersonnel:
User1:
name: TOTO
lastname: toto
company: 1
dateNaissance: 1980/09/30 00:00:00
dateEmbauche: 2000/10/01 00:00:00
fonction: 2
User2:
name: TATA
lastname: tata
company: 2
dateNaissance: 1990/09/30 00:00:00
dateEmbauche: 2010/10/01 00:00:00
fonction: 1
tableVisiteMedical:
vm1:
perso_id: User1
lastVm: 2010/10/01 00:00:00
validite: 2010/10/01 00:00:00
etat: 1 |
Et bien entendu cela ne fonctionne pas.:aie: N'étant pas dans le domaine des base de donnée je ne suis pas fortiche en relation. J'ai beau regarder vos solutions à d'autre sujet je ne trouve pas la raison.
Code:
SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails (`QHSE`.`table_visite_medical`, CONSTRAINT `table_visite_medical_perso_id_table_personnel_id` FOREIGN KEY (`perso_id`) REFERENCES `table_personnel` (`id`))
Pourriez-vous m'aider à solutionner ce point là ? :lol:
Merci d'avance.