对不起我的英语不好。
我在太多地方,显示相关对象的值:
= post.category.name
并且这个类别可能是空的(在 Ruby 中是 nil)。在 Django 中有default
过滤器,它的工作成本是任何未知变量都变为 None (nil),我们可以设置默认值。
在 Rails 中,这种情况下会出现异常 NoMethodError,因为我们试图访问的类别名称的含义并不存在。
我想编写一个捕获异常并返回的助手,—
但post.category.name
在将其传递给助手之前计算该值(原则上是合乎逻辑的)。
一般来说,我想在这里制作以下代码:
= post.category.nil? ? raw ('-'): post.category.name
以更方便的形式,像这样
= mdash(post.category.name)
谢谢!