Bonjour à tous,

Je travaille sur un projet web et malheureusement les bases de données c'est vraiment pas mon fort, j'ai essayé de mettre au point tant bien que mal ma base de donnée mais à mon avis j'ai dû faire une erreur notamment au niveau des relations car j'arrive sur une boucle infinie lors de la génération de mes fixtures.

Voici mon code si quelqu'un saurait m'aider :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
 
#schema.yml
SaphirImage:
  columns:
    url: { type: string(100), notnull: true }
SaphirUser:
  actAs: { Timestampable: ~ }
  columns:
    nom: { type: string(45), notnull: true }
    prenom: { type: string(45), notnull: true }
    pseudo: { type: string(45), notnull: true }
    password: { type: string(45), notnull: true }
    email: { type: string(45), notnull: true }
    naissance: { type: date(25), notnull: true }
    pays: { type: string(20), notnull: true }
SaphirEquipe:
  columns:
    plateforme: {type: varchar(20) }
    jeu: {type: varchar(20) }
SaphirJoueur:
  columns:
    chef:       { type: boolean, notnull: true }
    SaphirUser_id:  { type: integer }
    SaphirEquipe_id:  { type: integer }
    SaphirImage_id :  { type: integer }
  relations:
    SaphirUser: { foreignType: one, onDelete : CASCADE, local: saphirUser_id, foreign: id, foreignAlias: SaphirJoue }
    SaphirEquipe: { local: saphirEquipe_id, foreign: id, foreignAlias: SaphirMembre }
    SaphirImage: { foreignType: one, local: saphirImage_id, foreign: id, foreignAlias: SaphirAvatar }
SaphirNews:
  actAs: { Timestampable: ~ }
  columns:
    titre: { type: string(100), notnull: true }
    texte: { type: string(), notnull: true }
    saphirImage_id: { type: integer }
    saphirUser_id: { type: integer }
  relations:
    SaphirImage: { foreignType: one, local: saphirImage_id, foreign: id, foreignAlias: SaphirImageNews }
    SaphirUser: { local: saphirUser_id, foreign: id, foreignAlias: SaphirAuteurNews }
SaphirCommentaire:
  actAs: { Timestampable: ~ }
  columns:
    texte: { type: string(), notnull: true }
    saphirNews_id:  { type: integer }
    saphirUser_id:  {type: integer }
  relations:
    SaphirNews: { onDelete: CASCADE, local: saphirNews_id, foreign: id, foreignAlias: SaphirCommentaires }
    SaphirUser: { local: saphirUser_id, foreign: id, foreignAlias: saphirAuteurCommentaire }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
#users.yml
<?php for ($i=1; $i<11; $i++): ?>
  user_<?php echo $i ?>:
    nom: nom_user_<?php echo $i."\n" ?>
    prenom: prenom_user_<?php echo $i."\n" ?>
    pseudo: pseudo_user_<?php echo $i."\n" ?>
    password: password_user_<?php echo $i."\n" ?>
    email: mail_user_<?php echo $i ?>@test.com
    naissance: '1990-0<?php echo $i ?>-0<?php echo $i ?>'
    pays: <?php echo $i<5 ? 'France'."\n" : 'England'."\n"; ?>
<?php endfor; ?>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
#joueurs.yml
SaphirJoueur:
<?php $j = 1 ?>
<?php for ($i=1; $i<11; $i+2): ?>
  joueur_user_<?php echo $i ?>:
    chef: <?php echo $i+2<6 ? 'true'."\n" : 'false'."\n"; ?>
    SaphirUser: user_<?php echo $i."\n" ?>
    SaphirEquipe: equipe_<?php echo $j=1 ? '1'."\n" : '2'."\n"; ?>
    SaphirImage: avatar_joueur_<?php echo $i."\n" ?>
<?php $j=2 ? $j++ : $j-- ; ?>
<?php endfor; ?>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
#images.yml
SaphirImage:
<?php for ($i=1; $i<11; $i++): ?>
  avatar_joueur_<?php echo $i ?>:
    url: /images/joueurs/avatar_<?php echo $i ?>.jpg
<?php endfor; ?>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
#equipes.yml
SaphirEquipe:
  equipe_1:
    plateforme: PC
    jeu: COD
  equipe_2:
    plateforme: PS4
    jeu: FIFA
Merci d'avance pour votre aide