J'ai trouvé une solution qui marche MAIS je ne sais pas pourquoi cela marche :
database:
1 2 3 4 5
|
Article(id, ...)
Publication(id, article_id, domaine_id ...)
Domaine(id, ...)
Commentaire(id, publication_id |
schema.yml
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 49 50 51
|
Article:
...
relations:
Publication:
class: Publication
local: id
foreign: article_id
type: many
Publication:
columns:
article_id:
type: integer
domaine_id:
type: integer
...
relations:
Article:
class: Article
local: article_id
foreign: id
type: one
Domaine:
class: Domaine
local: domaine_id
foreign: id
type: one
Domaine:
columns:
...
relations:
Publication:
class: Publication
local: id
foreign: domaine_id
type: many
Article:
class: Article
refClass: Publication
local: site_id
foreign: article_id
foreignAlias: articles
Commentaire:
columns:
publication_id:
type: integer
relations:
.... |
Cela me donne pour l'article, un formulaire d'ajout avec une liste des domaines .
Et dans le domaine, une liste d'article.
Ce que je ne comprend pas, c'est comment il arrive a faire les 2 alors que j'ai spécifié que le lien dans une table ?
[Edition :] Problème résolu en enlevant le foreignAlias lors de la relation 'Domaine'
[Nouvelle question 1:] Comment faire en sorte que lorsque l'on édite une entrée dans la parti backend, on a le choix entre sauvegarder et donc faire un UPDATE ou faire un INSERT (j'aimerais avoir les 2 choix pour éviter, lorsque j'ai qu'un seul élément à changer, de tout me retaper. En faite, c'est une sorte d'insertion à partir d'un modèle existant.
[Nouvelle question 2:] En règle générale, avec doctrine, il vaut mieux de jamais mettre de clé primaire ? J'ai un
The "/articleComposition/:id/edit.:sf_format" route has some missing mandatory parameters (:Array).
sur une table possédant une clé primaire composé ( relation N-M ). Du coup, il vaut mieux mettre cela en champs avec un unique fiels [clé1, clé2] et un id unique ????
Partager