Я пытаюсь создать страницу, которая обновляет роли моих пользователей. У меня есть пользовательский контроллер и метод / действие в контроллере под названием «admin». Все, что делает определение администратора - это хранить всех пользователей в @users. В маршрутах ресурс - это пользователи, и он имеет коллекцию, которая получает: admin.
Я обновляю роли, создавая новую форму для каждого пользователя, и у меня есть кнопка сохранения для каждой формы рядом с каждым пользователем.
<table>
<tr>
<th>Username</th>
<th>Role</th>
<th>Update</th>
</tr>
<% @users.each do |user| %>
<%= form_for [user], :user => { :action => "update" } do |f| %>
<tr>
<td><%= user.username %></td>
<td><%= select("user", "role", options_for_select(['member', 'moderator','admin'], user.role) )%></td>
<td><%= f.submit %> </td>
</tr>
<% end %>
<% end %>
</table>
Это работает и обновляет, но это не очень интуитивно понятно. Я хотел бы либо иметь кнопку «Отправить» после всего этого, либо ajax-вызов, который обновляет роль при изменении, так что пользователю вообще не нужно беспокоиться о нажатии «сохранить».
Есть ли способ избежать двойного вложенного цикла и, возможно, добавить ajax, где кнопка обновления не нужна?
Спасибо за любой совет или помощь.