gpt4 book ai didi

ruby-on-rails - Ruby on Rails 助手 : display mdash if nil

转载 作者:数据小太阳 更新时间:2023-10-29 08:04:59 28 4
gpt4 key购买 nike

对不起我的英语。

我在太多地方,显示相关对象的值:

= 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)

谢谢!

最佳答案

用这个代替三元运算符怎么样?

post.category.try(:name) || raw('-')

Object#try

关于ruby-on-rails - Ruby on Rails 助手 : display mdash if nil,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14201806/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com