如果条件在轨道 - 很少评论和一个评论

时间:2015-04-09 12:24:13

标签: ruby-on-rails

我想将此功能添加到我的rails应用。这是架构。我不知道如何编写这段代码。

if
<%= @post.comments.count == 1 %>
puts 'Comment'

else
puts 'Comments'

For example:

1 Comment

5 Comments

请帮忙。

4 个答案:

答案 0 :(得分:3)

Rails有一个内置帮助器来处理变形(猜测如何复数英语单词)。

pluralize(@post.comments.count, 'Comment')

http://apidock.com/rails/ActionView/Helpers/TextHelper/pluralize

答案 1 :(得分:1)

你可以这样做:

 <% if @post.comments.count == 1 %>
     <%= Comment %>

 <% else %>
     <%= Comments %>
 <% end %>

虽然你最好使用&#39;复数&#39;方法,如果这确实是你的用例。

 <%= pluralize(@post.comments.count, 'Comment') %>

答案 2 :(得分:0)

更好的解决方案可以使用pluralize方法:

<%= pluralize(@post.comments.count, 'Comment') %>

以你的方式,三元运算符看起来更适合你的情况。

<%= @post.comments.count == 1 ? 'Comment' : 'Comments' %>

答案 3 :(得分:0)

使用字符串方法pluralize "Comment".pluralize(@post.comments.count)