gpt4 book ai didi

ruby-on-rails - Ruby 检查一行中是否存在记录和关联

转载 作者:行者123 更新时间:2023-12-04 03:51:33 25 4
gpt4 key购买 nike

我经常遇到的事情。我想这样做:

if current_user.exists? && current_user.role == "admin"
# Do something
end

显然,如果当前用户不存在,那么这将不起作用,因为它返回 undefined method role for nil class

有没有一种方法可以在没有多个 If 语句的情况下在一行中实现上述目标?

最佳答案

尝试:

if current_user&.role == "admin"

& 是一个安全的导航器 - 如果它之前的部分为 nil,则方法链的其余部分将不会执行并简单地返回 nil 而不是抛出错误。

更多阅读:http://mitrev.net/ruby/2015/11/13/the-operator-in-ruby/

关于ruby-on-rails - Ruby 检查一行中是否存在记录和关联,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58556567/

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