加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby轨道 – 智能复数总是聪明?

发布时间:2020-12-16 22:38:37 所属栏目:百科 来源:网络整理
导读:Ruby on rails对模型,视图和控制器名称使用单数和复数约定.这是非常好的,因为可能有一个名为user的模型和一个名为users的控制器.这个工作几乎每一个字,如用户,树,书,所以每个单词只有一个形成复数. 然而,那些不仅仅需要一个复数形式的单词呢,比如以字母“y”
Ruby on rails对模型,视图和控制器名称使用单数和复数约定.这是非常好的,因为可能有一个名为user的模型和一个名为users的控制器.这个工作几乎每一个字,如用户,树,书,所以每个单词只有一个形成复数.

然而,那些不仅仅需要一个复数形式的单词呢,比如以字母“y”结尾的单词呢?例如城市?轨道是否知道差异,或者我需要编写城市和城市,即使它是语法错误的?

解决方法

Rails知道很多复数.它可以处理“城市”,例如:
1.9.2p318 :001 > "city".pluralize
 => "cities" 
1.9.2p318 :002 > "cities".singular
 => "city"

但是,您可能会发现它不知道的复数,也不会学习.请参阅ActiveSupport :: Inflector的文档

The Rails core team has stated patches for the inflections library
will not be accepted in order to avoid breaking legacy applications
which may be relying on errant inflections. If you discover an
incorrect inflection and require it for your application,you’ll need
to correct it yourself (explained below).

你怎么纠正?在config / initializers / inflections.rb中.例如:

ActiveSupport::Inflector.inflections do |inflect|
  inflect.plural /^(.*)(l)ens$/i,'12enses'
end

再次查看ActiveSupport::Inflector的文档,了解有关如何教导轨道新变形的更多信息.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读