Rails检查User Id是否在Array中

BTH*_*ris 5 ruby ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.1

我正在尝试建立一个基于或不是"用户"是"成员"的条件.基本上我需要一种方法来检查current_user.id是否匹配任何成员的任何user_id.我现在的非工作代码是:

<% if current_user = @page.members %>
  you can view this content.
<% end %>
Run Code Online (Sandbox Code Playgroud)

我正在寻找以下内容:"如果current_user.id存在于任何成员的"user_id"中."

Mar*_*eed 13

根据您问题中的字段名称,这样的事情:

<% if @page.members.map(&:user_id).include? current_user.id %>
  You can view this content
<% end %>
Run Code Online (Sandbox Code Playgroud)


rjz*_*rjz 5

假设@page.members变量包含一个数组,则可以使用以下include?方法:

<% if @page.members.include? current_user %>
  you can view this content.
<% end %>
Run Code Online (Sandbox Code Playgroud)

如果您使用的是ID数组,那么您当然需要稍微更改测试以查找当前用户的ID:

<% if @page.members.include? current_user.id %>
  you can view this content.
<% end %>
Run Code Online (Sandbox Code Playgroud)