gpt4 book ai didi

ruby-on-rails - 使用 Ruby 的三元运算符? : to shorten this

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

我想知道是否有办法收紧它:

def find_by_recordtype
e = EvLk.find_by_sql(<SQL QUERY>)
return (e.size > 0 ? e : nil)
end

我可以做类似下面的事情,但不希望查询两次。

  return ( EvLk.find_by_sql().size > 0 ? EvLk.find_by_sql() : nil)

最佳答案

您正在使用 find_by_sql,因此您可能正在使用 Rails 或有可用的 ActiveSupport。在这种情况下,您可以使用 presence :

presence()

Returns the receiver if it's present otherwise returns nil. object.presence is equivalent to

object.present? ? object : nil

所以你可以这样做:

def find_by_recordtype
EvLk.find_by_sql(<SQL QUERY>).presence
end

关于ruby-on-rails - 使用 Ruby 的三元运算符? : to shorten this,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31078542/

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