gpt4 book ai didi

ruby-on-rails - Rails has_many和belongs_to与外键错误的关系

转载 作者:行者123 更新时间:2023-12-04 06:14:48 25 4
gpt4 key购买 nike

我正在尝试使用外键在rails上实现has_many和belongs_to关系,但我在尝试正确实现它时遇到了麻烦,我们将不胜感激。我也以此为指导:http://guides.rubyonrails.org/association_basics.html

这两个模型是主题和类(class)。一个学科有很多课,一个课属于一个学科。外键是subject_code。

以下是相关代码。

主题模型

class Subject < ActiveRecord::Base
:subject_code,
:subject_name
:lessons_attributes

has_many :lessons,
:foreign_key => "subject_code"

accepts_nested_attributes_for :lessons,
:allow_destroy => true
end

类(class)模型。
class Lesson < ActiveRecord::Base
attr_accessible :lesson_id,
:lesson_type,
:subject_code

belongs_to :subject,
:class_name=>"Subject",
:foreign_key=>"subject_code"

end

我不确定这个实现哪里出了问题,因为我无法从一个主题中检索类(class)。我的类(class)数据库表也已经有一个 subject_code 列。

在搞砸的时候,我发现如果我对我的主题模型进行以下更改
  has_many :lessons,
:foreign_key => "lesson_id"

我能够检索有关类(class)的信息,但将类(class) ID 绑定(bind)到主题 ID。但是,将外键更改为 subject_code,它不起作用,我只是对为什么感到困惑。

任何帮助,将不胜感激。

最佳答案

在主题模型中

has_many :lessons, :primary_key => "subject_code"

关于ruby-on-rails - Rails has_many和belongs_to与外键错误的关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14169373/

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