1

役割と能力が分離されたレールアプリを構築しています。cancancan+deviseを使うことにしたのですが、標準ユーザーロールの設定方法がわかりません?

class User < ActiveRecord::Base
  ROLES = %i[admin moderator author banned]
end
4

4 に答える 4

1

User モデルでコールバックを実行できます。

class User < ActiveRecord::Base
  after_create :assign_default_role

  def assign_default_role
    add_role(:default_role) if self.roles.blank?
  end
end

after_create が適切でない場合は、別のコールバックを試してください。詳細 はこちら

于 2015-06-25T02:50:05.563 に答える
0

アビリティを定義するとき、デフォルトのユーザー権限に「ユーザー」と呼ばれるアビリティを使用します。つまり、他の役割を持たないユーザーは、デフォルトの一連の能力を取得します。

また、サインインしていない訪問者に対して一連の「ゲスト」権限を使用します。

于 2016-01-15T14:30:45.637 に答える