ここでレールを初めて使用します。私の関連付けは以下のように設定されていますが、理想的な方法ではない可能性があるため、推奨事項は大歓迎です。
User has many posts (posts table has user_id)
User has one profile (profile table has user_id)
投稿コントローラー ビュー内で、投稿を所有するユーザーに属するプロファイルの名前 (profile.name) を表示したいと考えています。
私の素朴な最初の推測はそうでし<%= @post.user.profile.name %>
たが、明らかにうまくいきませんでした。
これは私のモデルで定義された関連付けです:
class User < ActiveRecord::Base
has_many :posts
has_one :profile
end
class Post < ActiveRecord::Base
belongs_to :user
end
class Profile < ActiveRecord::Base
belongs_to :user
end
これはビューのコードです: <%= @post.user.profile.name %>
エラーは未定義のメソッド プロファイルです