您好我有以下型号
class User < ActiveRecord::Base
acts_as_messageable
before_save { email.downcase! }
before_create :create_remember_token
has_many :items , dependent: :destroy
has_many :routes , dependent: :destroy
has_many :bids, dependent: :destroy
....
end
class Bid < ActiveRecord::Base
belongs_to :user
has_one :package
....
end
class Package < ActiveRecord::Base
belongs_to :user
has_many :bids, dependent: :destroy
....
end
当我运行单元测试时,我收到以下错误
失败/错误:@bid = user.bids.build(金额:34.00) ActiveRecord的:: UnknownAttributeError: 未知属性:user_id
我的单元测试开始如下
describe Bid do
let(:user) { FactoryGirl.create(:user) }
before {
@package = user.packages.build(destination: "Dublin", origin: "Naas", length: 4.9, width: 5.0, height: 9, weight:32, delivery_date: Time.now)
@bid = user.bids.build(amount: 34.00)
}
....
end
我不确定导致此错误的原因,我觉得它很小,因为我可以在rails控制台中创建出价
u = User.new
bid = u.bids.build(amount: 33)
bid.save
我的数据库中的出价表有user_id列,所以我不知道它在抱怨什么?当我解决这个错误时,我有点担心这可能是循环依赖,只是感觉是否有人可以确认这个也不会很好。
我想在为视图和控制器编写代码之前解决这个问题,因为我试图将自己训练为TDD
答案 0 :(得分:0)