Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 在迭代多个实例时选择正确的对象。-轨道_Ruby On Rails - Fatal编程技术网

Ruby on rails 在迭代多个实例时选择正确的对象。-轨道

Ruby on rails 在迭代多个实例时选择正确的对象。-轨道,ruby-on-rails,Ruby On Rails,我有七个不同的assignment对象。我目前正在迭代每个实例,然后迭代每个赋值的用户。我正在尝试将用户指定给作业。我有一个has_many-through表,它将用户分配给任务。但是,我现在的问题是,当我试图选择第四个作业时,它会一直选择第一个作业。我用HTML进行迭代的方式是错误的,但我似乎不知道我在做什么?这是我的HTML HTML: 如你所见。方法中的第二行使用params[:id]查找赋值_id。现在,当我试图获取:id=>“2”或“4”时,它只以:id=>“1”的形式出现 如果您需要

我有七个不同的
assignment
对象。我目前正在迭代每个实例,然后迭代每个赋值的
用户。我正在尝试
用户指定给作业。我有一个has_many-through表,它将用户分配给任务。但是,我现在的问题是,当我试图选择第四个作业时,它会一直选择第一个作业。我用HTML进行迭代的方式是错误的,但我似乎不知道我在做什么?这是我的HTML

HTML: 如你所见。方法中的第二行使用params[:id]查找赋值_id。现在,当我试图获取:id=>“2”或“4”时,它只以:id=>“1”的形式出现


如果您需要查看任何其他代码,请告诉我。谢谢

您真的想为每个任务和每个工作人员创建一个新列表吗。如果检查视图,是否可以看到具有不同ID的每个指定?尝试修改视图,使无序列表标记位于每个循环之外:

<div class="assignments">
  <ul>
    <% @assignments.each do |assignment| %>
      <li><%= link_to assignment.name, account_assignment_path(assignment) %></li>
      <%= link_to "designate Worker", "#designate", class: "button", data: { designate_worker: "" } %>
      <div id="workers-modal", class="modal--worker hidden">
        <ul>
          <% @account.account_workers.each do |worker| %>       
            <li><%= link_to worker.name, designate_account_assignment_path(assignment, user_id: worker.id) %></li>       
          <% end %>
        </ul>
      </div> 
    <% end %>
  </ul>
</div>

  def designate
    designated_user = current_account.users.find_by(id: params[:user_id])
    membership = designated_user.assignment_relationships.find_or_create_by(assignment_id: params[:id])

    membership.update!(designated: true)
    flash[:notice] = "Successfully designated the user"
    redirect_to root_path
  end
<div class="assignments">
  <ul>
    <% @assignments.each do |assignment| %>
      <li><%= link_to assignment.name, account_assignment_path(assignment) %></li>
      <%= link_to "designate Worker", "#designate", class: "button", data: { designate_worker: "" } %>
      <div id="workers-modal", class="modal--worker hidden">
        <ul>
          <% @account.account_workers.each do |worker| %>       
            <li><%= link_to worker.name, designate_account_assignment_path(assignment, user_id: worker.id) %></li>       
          <% end %>
        </ul>
      </div> 
    <% end %>
  </ul>
</div>