1

我有一个 link_to 消息

<%= link_to "Messages (#{Messages.count})", messages_path %>

但如果计数为 0,我想删除 (0)。

如何在 link_to 中加入这个“如果条件”?

4

1 回答 1

3

你有几个选择,但这个应该在这种情况下工作:

link_to "Messages #{Messages.count > 0 ? '(%d)' : ''}" % Messages.count, messages_path

对于比这更复杂的逻辑,您需要创建一个辅助方法:

link_to label_with_optional_counter("Messages", Messages.count), messages_path

您在适当的帮助模块中定义该方法:

def label_with_optional_counter(label, count)
  "%s #{count > 0 ? '(%d)' : ''}" % [ label, count ]
end
于 2012-11-30T07:07:14.310 回答