Я пытаюсь создать удаление link_to
в Rails 5, но по какой-то причине. Это не сработало.
По сути, я загрузил пользовательскую таблицу через конфигурацию devise или настройку.
Это будет работать для каждой учетной записи.
На этот раз я пытаюсь создать страницу или страницы, которые будут отображаться только специально для пользователей с ролью администратора.
Итак Я создал еще один контроллер для списка контроллеров, а затем в своем routes.rb
я помещаю это:
get 'dashboard/users-list', to: 'users#index'
Затем внутри моего app/views/users/index.html.erb
у меня есть следующее:
<section class="form-contact">
<div class="container">
<div class="row">
<div class="col-lg-9 mx-auto center-box">
<div class="card">
<div class="card-header">
<h2 class="display-5 main-text-blue text-center font-weight-bold">Users List</h2>
</div>
<div class="card-body">
<table class="table table-striped">
<thead>
<tr>
<th scope="col">Id</th>
<th scope="col">Name</th>
<th scope="col">Email</th>
<th scope="col">Action</th>
</tr>
</thead>
<tbody>
<% @users.each do |user| %>
<tr>
<th scope="row"><%= user.id %></th>
<td><%= user.name %></td>
<td><%= user.email %></td>
<td>
<button class="btn btn-primary btn-user">Edit</button>
<%= link_to 'Delete', user, method: :delete, data: { confirm: "Are you sure you want to delete user?"}, class: "btn btn-primary btn-user" %>
</td>
</tr>
<% end %>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</section>
Обратите внимание на удаляемую часть:
<%= link_to 'Delete', user, method: :delete, data: { confirm: "Are you sure you want to delete user?"}, class: "btn btn-primary btn-user" %>
Когда я перезагружаю это, выдается ошибка 'users_path not working`.
Вот мой users
контроллер, кстати:
class UsersController < ApplicationController
before_action :set_contact, only: [:edit, :update, :destroy]
def index
@users = User.all
end
def edit
end
def update
end
def destroy
@user.destroy
end
private
def set_user
@user = User.find(params[:id])
end
def user_params
params.require(:user).permit(:name, :email, :user_avatar, :password)
end
end
Несмотря на то, что я успешно выполнил перечисление всех пользователей, кнопка удаления даже не будет работать, поэтому я могу удалить конкретного пользователя внутри. Есть идеи, что мне здесь не хватает?