私は2種類のモデル:Show
とVenue
を持っています。各会場がショーに所属している間、ショーは1つの会場を有する。この状態は両方のモデルファイルで定義されており、has_one
& belongs_to
ステートメントが正しく記述されています。しかし、show.venue
で会場にアクセスできません。私はMySQLのエラーが動作するはず原因となるラインのように感じるhas_oneに関連するモデルにアクセスできない
logger.info("*********************")
logger.info("#{s.inspect}")
logger.info("#{Venue.find(s.venue_id)}") # Works
logger.info("#{s.venue}") # Causes a MySQL Error
logger.info("*********************")
:sがShow
インスタンスで、次のコードを考えてみましょう。私はvenues.show_id
にアクセスしようとしている理由はわかりません
ActiveRecord::StatementInvalid (Mysql::Error: Unknown column 'venues.show_id' in 'where clause': SELECT * FROM `venues` WHERE (`venues`.show_id = 95) LIMIT 1)
:これはエラーです。何か案は?
私はこのように考えるとちょっと混乱していると思います。 「ショーには会場があり、ショーにはその会場を参照するvenue_idがあります。」しかし、私は "会場にショーがあれば、会場のイドはそれに続く必要があります"と考え始めなければなりません。 – Tony