jas*_*328 5 ruby rspec ruby-on-rails associations ruby-on-rails-3
我运行一个测试的RSpec以确保两种模式之间相互关联has_many和belongs_to.这是我的测试.
describe "testing for has many links" do
before do
@post = Post.new(day: "Day 1", content: "Test")
@link = Link.new(post_id: @post.id, title: "google", url: "google.com")
end
it "in the post model" do
@post.links.first.url.should == "google.com"
end
end
Run Code Online (Sandbox Code Playgroud)
测试告诉我url是一个未定义的方法.我的考试有什么问题?或者我只是错过了一些基本的东西.
Post的模型文件
has_many :links
Run Code Online (Sandbox Code Playgroud)
链接的模型文件
belongs_to :post
Run Code Online (Sandbox Code Playgroud)
最重要的是,链接模型具有属性 post_id
luc*_*usa 15
你需要保存两个模型来验证这种关系,你也可以使用shoulda gem.
代码如下:
describe Link do
it { should belong_to(:post) }
end
Run Code Online (Sandbox Code Playgroud)
describe Post do
it { should have_many(:links) }
end
Run Code Online (Sandbox Code Playgroud)