我在 HAML 文档中有一些插入的 ruby 代码,如下所示:
:javascript
a = { 'something' : "#{model.attribute.present? ? method(parameter) : ''}" }
但是,方法(参数)正在抛出带有一些参数的异常,所以我想挽救这个异常。当抛出异常时,我希望将“某物”键映射到其他东西。
我不清楚如何使用 HAML 代码/ruby 插值来执行此操作的确切语法。我已经尝试了几件事,但它不起作用。
谢谢!
我在 HAML 文档中有一些插入的 ruby 代码,如下所示:
:javascript
a = { 'something' : "#{model.attribute.present? ? method(parameter) : ''}" }
但是,方法(参数)正在抛出带有一些参数的异常,所以我想挽救这个异常。当抛出异常时,我希望将“某物”键映射到其他东西。
我不清楚如何使用 HAML 代码/ruby 插值来执行此操作的确切语法。我已经尝试了几件事,但它不起作用。
谢谢!
你应该走这条线
model.attribute.present? ? method(parameter) : ''
并从中制作一个辅助方法
class ApplicationHelper
def some_method
model.attribute.present? ? method(parameter) : ''
rescue
"something else" # this is your value in case of exception
end
end
然后你的 HAML 变得微不足道
:javascript
a = { 'something' : "#{some_method}" }