Ruby on rails Rails:如何销毁所有用户&x27;当用户被销毁时,发布

Ruby on rails Rails:如何销毁所有用户&x27;当用户被销毁时,发布,ruby-on-rails,Ruby On Rails,目前我有一个超级管理员,可以销毁用户和帖子 但是,销毁用户时会出现问题。由于所有用户的旧帖子仍然存在,因此有一堆帖子留下了空白用户。错误接踵而至 您是否知道如何对其进行编码,以便当用户被销毁时,该用户的所有帖子也会被销毁?下面是我在SuperAdmin控制器中使用的内容 class SuperAdminController < ApplicationController layout 'super_admin' before_action :authenticate_super_a

目前我有一个
超级管理员
,可以销毁
用户
帖子

但是,销毁用户时会出现问题。由于所有用户的旧帖子仍然存在,因此有一堆帖子留下了空白用户。错误接踵而至

您是否知道如何对其进行编码,以便当用户被销毁时,该用户的所有帖子也会被销毁?下面是我在SuperAdmin控制器中使用的内容

class SuperAdminController < ApplicationController
  layout 'super_admin'
  before_action :authenticate_super_admin!
end  


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

    if @user.destroy
        redirect_to :back, notice: "User deleted."
    end
  end
class SuperAdminController

提前感谢您的耐心等待。我不熟悉编码。

使用关联上的
dependent
选项

下面是一个模型定义的示例。删除帖子时,其资产以及从属关联的一部分也将被删除:

class Post < ActiveRecord::Base
  has_many :assets, dependent: :destroy
end
class Post

来源:

使用关联上的
依赖
选项

下面是一个模型定义的示例。删除帖子时,其资产以及从属关联的一部分也将被删除:

class Post < ActiveRecord::Base
  has_many :assets, dependent: :destroy
end
class Post

来源:

您不必调用
@user。请分别销毁
if@user.destroy
将单独完成。顺便说一句,我知道你正在开发什么样的网站,但删除帖子似乎不是个好主意(如果你真的需要的话)。有一些gem可以删除(或标记为已删除)用户,同时仍保留帖子,因此所有对话仍将保持可读性。e、 g.你可以在gem上看一看。你不必单独调用
@user.destroy
if@user.destroy
将单独完成。顺便说一句,我知道你正在开发什么样的网站,但删除帖子似乎不是个好主意(如果你真的需要的话)。有一些gem可以删除(或标记为已删除)用户,同时仍保留帖子,因此所有对话仍将保持可读性。e、 你可以看看宝石。