【发布时间】:2009-04-30 13:46:56
【问题描述】:
我在使用一对多关系时遇到了问题。我希望每个系列都有一个出版商,而一个出版商有多个系列。
这是我的发布者模型:
class Publisher < ActiveRecord::Base
validates_presence_of :name
has_many :series
end
这是我的 Serie 型号:
class Serie < ActiveRecord::Base
belongs_to :publisher
end
这是失败的测试:
test "a publisher should have a list of series" do
@publisher = Publisher.new :name => "Standaard Uitgeverij"
@series = [ Serie.new(:name => "De avonturen van Urbanus", :publisher => @publisher),
Serie.new(:name => "Suske en Wiske", :publisher => @publisher) ]
assert_equal @series, @publisher.series
end
测试在最后一行失败,出现 NameError: uninitialized constant Publisher::Series。
我试图保存出版商和系列,但这没有奏效。我只尝试了一个系列,但这给出了同样的错误。
由于我刚刚开始使用 Rails 和 Ruby,所以我在这里不知所措。我做错了什么?
【问题讨论】:
-
我将 has_many 关系重命名为 serie 并且在保存系列时,关系有效。但我想要名称系列而不是系列。
标签: ruby-on-rails ruby activerecord