我在我的应用程序中使用Rubocop,它为此建议Use a guard clause instead of wrapping the code inside a conditional expression
。 Plz建议一种干净的方法来重写它。
if (geolocation_points.exists? || geolocation_boxes.exists?)
self.geolocation = true
end
答案 0 :(得分:2)
假设代码在一个方法中,你会写一个这样的保护条件:
def my_fancy_method
return unless geolocation_points.exists? && geolocation_boxes.exists?
self.geolocation = true
end
但是,如果geolocation
应该始终为true或false,我可能会按如下方式编写它,它在没有if或保护条件的情况下工作:
def my_fancy_method
self.geolocation = geolocation_points.exists? && geolocation_boxes.exists?
end