Rails与Pundit一起推广

时间:2016-07-05 03:01:26

标签: ruby-on-rails ruby parentheses pundit rolify

本文中的指南说明了如何将rolify与权威授权一起使用。

我正在尝试在我的Rails应用程序中找到解决方法。

链接帖子中的答案让我感到困惑的是,索引操作会检查:admin,其中show action会检查(:admin)。在某些情况下,括号是否有理由?

Why is Pundit not coupled with Rolify like CanCanCan is?

  def index?
    @user.has_role? :admin
  end

  def show?
    @user.has_role?(:admin) || @user.organisation == @organisation
  end

2 个答案:

答案 0 :(得分:0)

Ruby允许你省略括号,它更像是一种编码风格。

通常我们在 Ruby 中使用 keyword 状态的方法时省略括号。 (putsattr_accessor等)对于其他方法,我们可以使用()

您可以在此处了解详情:Ruby Style Guide

答案 1 :(得分:0)

如果你的意思是括号是因为风格指南使@user.has_role?(:admin) || @user.organisation == @organisation@user.has_role? :admin || @user.organisation == @organisation更具可读性,那么就有多种代码风格指南。