【发布时间】:2018-05-15 15:38:38
【问题描述】:
我有一个工作正常的Pundit policy,但我编写它的方式似乎并不是表达这一点的“最佳”方式。这是一个包含三个“或”语句的策略。代码如下:
def update?
user.admin? or user.moderator? || user.id == @artist.user_id
end
还有什么方法可以写这个?或者这是最好的表达方式?
【问题讨论】:
-
出于好奇,你为什么把
or和||混在一起?关于a || b || c,什么似乎“不是最好的”? -
我只是为了在视觉上分开它,因为管理员和版主是相似的
-
FWIW,ruby style guide 建议
or被“禁止”,因为“很可能会引入细微的错误”。 -
酷。谢谢@jvillian
标签: ruby-on-rails ruby conditional control-flow pundit