Rails资本化/多元化规则

时间:2015-07-19 21:56:05

标签: ruby-on-rails ruby resources capitalization pluralize

当处理资源(例如用户)时,rails应用程序的不同部分以几种方式之一引用它们,一些大写/单数,一些小写/复数等。有时这似乎是合乎逻辑的(例如,一种方法可用于多种资源vs只有一个)但在其他时候它似乎是随意的......

有没有简单的方法来记住如何从应用程序的不同部分访问它们?

1 个答案:

答案 0 :(得分:2)

大多数情况下,您需要在整个应用中访问不同的模型。并且您总是会使用带有首字母大写的单数名称来访问它们,例如UserTweet。关于控制器,我不这么认为你可以从其他控制器访问控制器。

请记住,如果正在使用原始SQL,并且您想要访问模型表,那么它将始终为复数形式且全部为小写,例如users User和{{1}对于tweets

关于路线,它们总是通过小写字来访问,并决定是单数还是复数 - 它取决于上下文。

如果您要访问所有推文,则路由方法为Tweet,如果需要一条推文,则tweets_pathtweet_path(1)其中edit_tweet_path(1)为{{1}您想要显示或编辑的推文。

对于类:Rails中的每个地方,一般来说都是Ruby,它们总是单数,大写' d。