如何仅显示那些未与 rails 中的项目链接的用户
How can show only those user who is not linked with project in rails
我试图只显示那些没有链接到项目的开发人员,但它总是显示一个已经链接的开发人员
ProjectDeveloper 是具有项目和开发者 ID 的模型
用户有一列用户类型,类型是枚举,包含开发人员经理和 qa
控制器
def index
@users = User.where(user_type: 'Developer')
@project_developer = ProjectsDeveloper.where.not(id: @users.ids)
project_id = params['project_id'].to_i
@project_id = Project.find(project_id)
end
html.erb
<% @project_developer.each do |user| %>
<h3><%=user.developer_id %></h3>
<%=button_to 'Assign' , projects_developer_index_path({project_id: @project_id.id, developer_id: user.id}),
method: :post %><br>
<% end %>
试试这个方法:
def index
@project = Project.find(params['project_id'].to_i)
@project_developer = project.projects_developers.pluck(:developer_id)
@users = User.where(user_type: 'Developer').where.not(id: @project_developer)
end
并在视图中使用@users 实例来显示开发人员。
<% @users.each do |user| %>
<h3><%=user.id %></h3>
<%=button_to 'Assign' , projects_developer_index_path({project_id: @project_id.id, developer_id: user.id}),
method: :post %><br>
<% end %>
我试图只显示那些没有链接到项目的开发人员,但它总是显示一个已经链接的开发人员
ProjectDeveloper 是具有项目和开发者 ID 的模型 用户有一列用户类型,类型是枚举,包含开发人员经理和 qa
控制器
def index
@users = User.where(user_type: 'Developer')
@project_developer = ProjectsDeveloper.where.not(id: @users.ids)
project_id = params['project_id'].to_i
@project_id = Project.find(project_id)
end
html.erb
<% @project_developer.each do |user| %>
<h3><%=user.developer_id %></h3>
<%=button_to 'Assign' , projects_developer_index_path({project_id: @project_id.id, developer_id: user.id}),
method: :post %><br>
<% end %>
试试这个方法:
def index
@project = Project.find(params['project_id'].to_i)
@project_developer = project.projects_developers.pluck(:developer_id)
@users = User.where(user_type: 'Developer').where.not(id: @project_developer)
end
并在视图中使用@users 实例来显示开发人员。
<% @users.each do |user| %>
<h3><%=user.id %></h3>
<%=button_to 'Assign' , projects_developer_index_path({project_id: @project_id.id, developer_id: user.id}),
method: :post %><br>
<% end %>