[前][次][番号順一覧][スレッド一覧]

rails:1701

From: hoti <hoti_jp@y...>
Date: Wed, 11 Oct 2006 00:27:25 +0900 (JST)
Subject: [rails:1701] リレーションシップの外部参照 id が使えない

こんにちは、報知です。

早速ですが、下のようなモデルを使って、1対1のリレーションを使おうとしています。

class Article < ActiveRecord::Base
  has_one :comment
end

class Comment < ActiveRecord::Base
  belongs_to :article
end


>> a = Article.new
>> b = Comment.new
>> a.comment<<b

【エラーメッセージ】====================
>> l.task<<t
ActiveRecord::StatementInvalid: SQLite3::SQLException: no such column: comments.article_id:
SELECT * FROM comments WHERE (comments.article_id = 1)  LIMIT 1
        from
/opt/local/lib/ruby/gems/1.8/gems/activerecord-1.14.4/lib/active_record/connection_adapters/abstract_adapter.rb:120:in
`log'
(略)
        from
/opt/local/lib/ruby/gems/1.8/gems/activerecord-1.14.4/lib/active_record/associations.rb:833:in
`comment'
        from (irb):9
=======================================

どうも、「article_idじゃないからダメ」となっているようです。資料では、"article_"を抜いた単
なる「id」だけでいいハズだと思うんですが。。

何か、チェックすべき部分はあるでしょうか。

ご面倒ですが、アドバイスをお願い致します。



PS Mac OSXでgemインストールしており、railsのバージョンは1.1.6、activerecordは1.14.4です。

PPS 下のようなコードだと、エラーは発生しません。
class Article < ActiveRecord::Base
  has_one :comment
          :foreign_key => "id" 
end

--------------------------------------
[10th Anniversary] special auction campaign now!
http://pr.mail.yahoo.co.jp/auction/

--
ML: rails@r...
使い方: http://QuickML.com/

[前][次][番号順一覧][スレッド一覧]

->    1701 2006-10-10 17:27 [hoti_jp@y...        ] リレーションシップの外部参照 id が使えない 
      1703 2006-10-11 14:52 ┗[manaka.y@g...       ]