mar*_*ion 6 ruby-on-rails cancan cancancan ruby-on-rails-5
在我ability.rb
,我有以下规则:
elsif user.has_role? :demo
can :read, Profile, demo_featured: true, demo_linked: true, message: "To access this profile, please subscribe here."
Run Code Online (Sandbox Code Playgroud)
但那不会产生我想要的信息.
如何获得此特定规则以生成我想要的消息?
编辑1
这是完整的ability.rb
if
条件:
def initialize(user)
user ||= User.new # guest user (not logged in)
alias_action :create, :show, :new, :destroy, to: :csnd
if user.has_role? :admin
can :manage, :all
elsif user.has_role? :coach
# do some stuff
elsif user.has_role? :demo
can :read, Profile, demo_featured: true, demo_linked: true
elsif user.has_role? :player
# can do some stuff
else
can :read, Profile
end
end
Run Code Online (Sandbox Code Playgroud)
这些是我的一些内容ProfilesController
:
before_action :set_profile, only: [:show, :edit, :update, :destroy, :invite_user, :profiles]
def set_profile
@profile = Profile.published.includes(:grades, :positions, :achievements, :videos, :transcripts).friendly.find(params[:id])
end
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
433 次 |
最近记录: |