ruby-on-rails – Ruby on Rails是多元化的

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – Ruby on Rails是多元化的前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
有没有帮助来避免这种代码
= @leads.length == 1 ? 'is' : 'are'

我知道多元化,但在这种情况下并没有帮助.我知道写一个帮手是微不足道的,我想知道Rails API中有没有被忽略的东西.

谢谢,

-Tim

解决方法

正如 t6d所说你需要添加的是/是Rails的拐角.只是从td6的代码,但您需要添加ActiveSupport命名空间:
ActiveSupport::Inflector.inflections do |inflection|
  inflection.irregular "is","are"
end

现在,Rails已经建立的帮助器是多元化的,但是在一个看来,不会做你想要的.
例如:

pluralize(@leads.length,'is')

输出(2针)

2 are

对于你想要的,你需要使自己的帮助者将复数单词,但不输出计数.所以如果你把它放在当前的轨道上,

def pluralize_no_count(count,singular,plural = nil)
  ((count == 1 || count == '1') ? singular : (plural || singular.pluralize))
end

猜你在找的Ruby相关文章