У меня есть семь различных assignment
объектов. В настоящее время я перебираю каждый экземпляр, а затем перебираю users
каждое назначение. Я пытаюсь designate
пользователей к назначению. У меня есть has_many через таблицу, которая назначает пользователю назначение. Но моя проблема сейчас заключается в том, что он продолжает выбирать первое задание, когда я пытаюсь выбрать четвертое задание. То, как я итерирую с HTML, неправильно, но я не могу понять, что я делаю? Вот мой HTML.
HTML:
<div class="assignments">
<% @assignments.each do |assignment| %>
<ul>
<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">
<% @account.account_workers.each do |worker| %>
<ul>
<li><%= link_to worker.name, designate_account_assignment_path(assignment, user_id: worker.id) %></li>
</ul>
<% end %>
</div>
</ul>
<% end %>
</div>
Как вы можете видеть, я повторяю все назначения на текущем счете. Затем я перебираю всех пользователей текущего аккаунта. Затем я пытаюсь выбрать конкретное назначение по идентификатору и пользователя по идентификатору и создать связь между ними, но из пользовательского интерфейса я не могу выбрать ни assignment
одного, кроме первого. Я думаю, что это как-то связано с тем, как я повторяю, но я не знаю точно.
Контроллер:
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
Как видите. Вторая строка в методе ищет assignment_id с params [: id]. Прямо сейчас он приходит только как: id = > «1», Когда я пытаюсь получить: id = > > » 2 » или » 4″
Дайте мне знать, если вам нужно увидеть какой-либо другой код. Спасибо!
Вы действительно хотите, чтобы начать новый список для каждого назначения и каждого работника. При просмотре представления отображаются ли назначения с разными идентификаторами? Попробуйте изменить представление так, чтобы неупорядоченные теги списка находились вне каждого цикла: