1

Person2つのモデルとを備えたRailsアプリがあるとしHouseます。各PersonオブジェクトにはHouse_idプロパティがあります。

Personモデル内で次のメソッドを定義したいと思います。

def locate_house
  current_house_id = house.find_by_id(person)
end

しかし、の未定義の変数エラーが発生しhouseます。これがスコープ内にあることを確認するにはどうすればよいですか?

4

3 に答える 3

2

すでにレールに組み込まれているものを書き直そうとしています。関係を使用します:belongs_to関係:

class Person < ActiveRecord::Base
    belongs_to :house
end

次に、次のことを実行できます。

person.house

関連する家を取得します。

于 2012-04-17T00:12:19.533 に答える
1

あなたのモデルHouse---大文字化が必要なルビー定数です

def locate_house
  current_house_id = House.find_by_id(person)
end
于 2012-04-17T00:12:48.413 に答える
0

Houseは定数であり、他の誰かが言ったように大文字が必要です。アクティブレコードモデル間の関係については、Railsガイドを参照してください。考えられる現実はたくさんありますが、おそらくあなたが探しているものはたくさんあります。なぜなら、実際には、人は複数の家を持つことができるからです。

于 2012-04-17T00:39:36.290 に答える