我正在尝试建立一个基于或不是“用户”是“成员”的条件。基本上我需要一种方法来检查current_user.id是否匹配任何成员的任何user_id。我现在的非工作代码是:
<% if current_user = @page.members %>
you can view this content.
<% end %>
我正在寻找以下内容:“如果current_user.id存在于任何成员的”user_id“中。”
答案 0 :(得分:13)
基于你问题中的字段名称,这样的事情:
<% if @page.members.map(&:user_id).include? current_user.id %>
You can view this content
<% end %>
答案 1 :(得分:4)
假设您的@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 %>
答案 2 :(得分:1)
@member_ids = @page.members.map{|m| m.id()}
然后检查以下条件
@memeber_ids.include? current_user.id()
答案 3 :(得分:0)
在include?
之前已经说过了。
我只是回答告诉你一个名为 CanCan 的宝石,它可让您轻松访问授权“帮助者”。
为什么你应该使用 CanCan 而不是做你实际做的事情?
对不起,如果我重复一遍。