我正在尝试根据“用户”是否为“成员”来构建条件。基本上,我需要一种检查当前用户id是否与任何成员的user_id匹配的方法。目前我有以下无法工作的代码:
<% if current_user = @page.members %>
you can view this content.
<% end %>
我正在寻找类似这样的内容:“如果当前用户ID存在于任何成员的“user_id”中。”
我正在尝试根据“用户”是否为“成员”来构建条件。基本上,我需要一种检查当前用户id是否与任何成员的user_id匹配的方法。目前我有以下无法工作的代码:
<% if current_user = @page.members %>
you can view this content.
<% end %>
<% if @page.members.map(&:user_id).include? current_user.id %>
You can view this content
<% end %>
@page.members
变量包含一个数组,你可以使用include?
方法:(参考链接)
<% if @page.members.include? current_user %>
you can view this content.
<% end %>
如果您正在使用ID数组,则需要稍微更改测试以查找当前用户的ID:
<% if @page.members.include? current_user.id %>
you can view this content.
<% end %>
@member_ids = @page.members.map{|m| m.id()}
然后检查以下条件
@memeber_ids.include? current_user.id()
之前已经说过,应该使用include?
来完成这件事。
我只是想告诉你一个叫做CanCan的宝石,它可以为你提供简单的授权“助手”。
为什么你应该使用CanCan而不是你现在正在做的事情呢?
如果我重复了自己,请原谅。