Bien nommer ses éléments dans Rails, c’est primordial. Il faut faire gaffe à l’initiale en majuscule, au pluriel, et aussi à l’ordre des noms pour les join tables.
Je ne sais pas ce qui se passe si le join table est mal nommée, mais bon, tant qu’à faire, autant le faire bien. En l’occurence, pour ma join table Album <--> Artist, elle devra se nommer albums_artists. Ce qu’il faut c’est que ce soit :
- en minuscule
- au pluriel
- par ordre alphabétique
Là c’est facile, pour l’ordre alpha. Mais ça peut être plus compliqué. Si je reprends l’exemple du guide Ror, si on a les Models “papers” et “paper_boxes”, le nom du la join table sera paper_boxes_papers et pas papers_paper_boxes.
En fait, pour vérifier, il faut comparer les deux String :
a = 'papers' b = 'paper_boxes' c = a<b puts c #false
Donc il faut mettre “paper_boxes” en premier parce que l’underscore “_” est avant le “s”.
Flux RSS