我只希望创建对象(例如注册表)的人看到一些东西=,但努力用 Devise 定义一切
这是代码:
<% if user_signed_in? && ***"current_user = registry the user created?"?(struggling with the second part)*** %>
提前致谢
PS我正在使用cancan,但这对我想要显示页面的显示页面没有帮助。
我只希望创建对象(例如注册表)的人看到一些东西=,但努力用 Devise 定义一切
这是代码:
<% if user_signed_in? && ***"current_user = registry the user created?"?(struggling with the second part)*** %>
提前致谢
PS我正在使用cancan,但这对我想要显示页面的显示页面没有帮助。
这不是设计的一部分,而是康康舞的一部分。
您需要在您的 cancan 能力文件中定义能力:
user ||= User.new
can :read, Registry, :user_id => user.id
这样,cancan 的授权方法将允许您执行以下操作:
@registry = Registry.find(params[:id])
authorize! :read, @registry
明明授权!如果用户无权访问此资源,将引发错误。
如果您只是想在您使用的注册表视图中检查这一点:
<% if can? :read, @registry %>
do your thing here
<% end %>
顺便说一句,所有这些都记录在 cancan 首页上:https ://github.com/ryanb/cancan