gpt4 book ai didi

ruby-on-rails - Rails - 如何销毁在设计下创建的用户?

转载 作者:行者123 更新时间:2023-12-03 21:39:19 26 4
gpt4 key购买 nike

对于我的应用程序,我有人们可以注册的用户帐户。我使用 devise设置的 gem 。

我还有一个用户页面,其中列出了所有注册到该站点的用户以及 destroy。关联。我希望我的管理员能够删除用户并将其重定向到此用户列表页面。但是当我单击链接以销毁特定用户时,它只是重定向到用户配置文件页面,并且不会从数据库中删除用户。

有人知道为什么吗?

**更新:按照建议更新了下面的代码,现在可以使用。

users_controller.rb

  def destroy
@user = User.find(params[:id])
@user.destroy

if @user.destroy
redirect_to root_url, notice: "User deleted."
end
end

用户/index.html.erb
<div class = "container">
<div id="usersview">
<b>USERS DIRECTORY</b>
<%= render @users %>
</div>

<center>
<%= will_paginate @users %>
</center>
</div>

用户/_user.html.erb
<div class="comments">
<%= link_to user.name, user %>
<% if current_user.try(:admin?) && !current_user?(user) %>
<%= link_to "Destroy", admin_destroy_user_path(user), method: :delete, data: { confirm: "You sure?" } %>
<% end %>
</div>

路线.rb
devise_for :users    
match 'users/:id' => 'users#destroy', :via => :delete, :as => :admin_destroy_user
match 'users/:id' => 'users#show', as: :user
resources :users

最佳答案

根据设计 4.1 rake 路由和 View ,使用以下内容将帮助您在以用户身份登录后删除该帐户。

<%= link_to "Cancel my account", registration_path(current_user), data: { confirm: "Are you sure?" }, method: :delete %>

关于ruby-on-rails - Rails - 如何销毁在设计下创建的用户?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16289299/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com