Shoulda belongs_to with class_name and foreign_key
问题 I know you can easily test a belongs to relationship using Shoulda: describe Dog dog it { should belong_to(:owner) } end Is it possible to test a more complicated belongs_to relationship using Shoulda? Something like this: class Dog < ActiveRecord::Base belongs_to :owner, :class_name => "Person", :foreign_key => "person_id" end 回答1: You should be able to use: it { should belong_to(:owner).class_name('Person') } Shoulda's belong_to matcher always reads the foreign_key from the association and