在 this Railscast Ryan Bates 提到,在命名连接模型时,使用以 -tion、-ment 或 -ship 结尾的单词是一个很好的约定。这个约定有什么好处?
例如,如果我有两个模型,分别称为“专辑”和“歌曲”,其中一首歌可以出现在许多专辑中,而一张专辑有很多歌曲,该怎么办?为此所需的连接表的好名称是什么?轨道列表?轨道列表?
最佳答案
惯例是给它命名一个有意义的名称。
这些关系通常会以这些结局结束。重点是遵循a约定并保持一致,不一定所有内容都会整齐地融入相同的三个结局。
对我来说,它听起来像 Tracks
、AlbumTracks
等。如果你想遵循他的构词理念,也许可以使用 Trackation
或Trackination
(将轨道放入专辑的过程)、Albumship
(类似于“成员(member)资格”,但包含专辑歌曲)等。
另请注意,希望您没有名为 Albums
和 Songs
的模型,而是名为 Album
和 Song
的模型。在我看来,最清晰的关系就是 AlbumSongs
,因为这正是它的本质。
您也可以采取完全不同的路线,并将它们称为Mixes
。
关于ruby-on-rails - Rails 社区命名连接模型的命名约定有哪些优点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15373017/