Belongs_toアソシエーションの場合、テーブルに対応する外部キーがなくても、railsを使用してアソシエーションを設定できるようです。これは予想される動作ですか?
次の状況を参照してください。
$> rails new mynewapp
$> cd mynewapp
$> rails g model User
$> rails g model Whatever
$> rake db:migrate
#user.rb
belongs_to :whatever
$> rails c
u = User.new
u.save
w = Whatever.new
w.save
u.whatever = w
u.save #no error!
u.whatever #=> w(Whatever)
u.reload #=> w(Whatever)
User.find(u.id).whatever #=> nil!!!!!!
Railsv3.2.3でこの動作が見られます