2017-01-08 20 views
0

'schedule_items'テーブルに新しい列 'page_title'を作成しました。 'page_title'は 'pages'テーブルに存在します。 'page_id'は 'schedule_items'テーブルに存在するため、外部キーを取得することができ、schedule_item.rbモデルでは「belongs_to:page」の関係がわかります。私はどのように 'page_title'カラムを関連する 'page_title'カラムを 'pages'テーブルから引っ張るかを理解できません。どんな助けでも感謝しています!rails新しい列の外部キー 'null'

+2

を[MCVE]、我々はできるように投稿してくださいあなたが試したことを見て、あなたを助けてください。 –

答えて

1

belongs_to :pageを定義すると、page_idという名前の列を検索する必要があることを理解できる特別なコードがあります。

Railsには他の種類の列のコードはありません。自動的にpage_titleが検索されるコードはありません。必要な場合は、別の処理を行う必要があります。そして、あなたが何か行うことができ

class Schedule 
    belongs_to :page 
    delegate :title, :to => page 

:これに対処する

一般的な方法は、委任などを用いることであろう

schedule = Schedule.find(12345) 
schedule.title # => "Title for page associated with this schedule" 
+1

その質問の感覚を作るためにあなたに帽子をかける。 – max

+0

:時々私はそれを理解することができます...ほとんどの時間私はできません... :) –

関連する問題