嗨,嗯,在 rails 中使用 rspec,然后创建一个有效用户,如下所示
it "should create a valid user" do
@user = User.find_or_create_machine_user("test@dllo.no","test_first", "test_last").should be_an_instance_of User
end
该测试通过并且工作正常,但是当我包含此部分时,会出现错误
@batch = FactoryGirl.create(:batch, :file_name => "test_file",
:created_by=> @user)
并说ActiveRecord::AssociationTypeMismatch:
User(#65709220) expected, got String(#19934580)
。我尝试使用 created_by_id = @user.id.to_int 这也失败了。
图式
class Batch < ActiveRecord::Base
belongs_to :created_by, :class_name => "User", :foreign_key => :created_by
attr_accessible :created_by, :file_name
谁能告诉如何克服这个?created_by 接受用户