Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails多属于关联_Ruby On Rails_Ruby On Rails 4 - Fatal编程技术网

Ruby on rails Rails多属于关联

Ruby on rails Rails多属于关联,ruby-on-rails,ruby-on-rails-4,Ruby On Rails,Ruby On Rails 4,我有一个如附图所示的模式 现在在回答模块中,我有以下代码 class Answer < ActiveRecord::Base belongs_to :project, class_name: "Project", foreign_key: "project_id" belongs_to :questionair, class_name: "Questionair", foreign_key: "questionair_id" end class-Answer

我有一个如附图所示的模式

现在在回答模块中,我有以下代码

class Answer < ActiveRecord::Base
    belongs_to :project, class_name: "Project", foreign_key: "project_id"
    belongs_to :questionair, class_name: "Questionair", foreign_key: "questionair_id"
end
class-Answer
这些是属于线路的吗?当我删除项目时,答案会按预期删除,但在调查问卷的情况下,它无法删除关联的答案行。 我必须额外做什么。我有:

class Project < ActiveRecord::Base
    has_many :answers, dependent: :destroy
end
class Questionair < ActiveRecord::Base
    has_many :answers, dependent: :destroy
end 
class项目
试试这种方法

class Answer < ActiveRecord::Base
    belongs_to :project
    belongs_to :questionair
end

class Project < ActiveRecord::Base
    has_many :answers, dependent: :destroy
end

class Questionair < ActiveRecord::Base
    has_many :answers, dependent: :destroy
end 
如果你使用

project.delete #this does not trigger dependent destroy

我怎么能理解你,你只想在一个命令中销毁所有依赖项:

project.destroy 
# delete all nested answers, 
# questionairies and questionairies->answers
因此,您需要在项目模型中添加一行

class Project < ActiveRecord::Base
  has_many :answers, dependent: :destroy
  has_many :questionairies, dependent: :destroy
end
class项目
而不是

class Project < ActiveRecord::Base
    has_many :answers, dependent: :destroy
end
class项目

如果我理解你的错误,请更深入地解释你的问题。

yo man。。我触发了删除,并希望使用。销毁,我搞砸了。删除和。销毁,谢谢。。
class Project < ActiveRecord::Base
    has_many :answers, dependent: :destroy
end