0

私はかなり典型的なブログを持っているとしましょう。

A post belongs to a user.
A user has many posts.

A post has many comments.
A comment belongs to a post.
A comment belongs to a user. 

投稿を作成しているときに、次のようなことができることを理解しています。

@post = @user.posts.build(subject: "Lorem ipsum", content: "Lorem ipsum") }

しかし、それが投稿とユーザーの両方に関連していることを考えると、コメントに対してそれを行う方法がわかりません。簡単にするために、コメントに content、user_id、post_id の 3 つのフィールドがあるとします。どうにかして build メソッドを使用できますか? 任意のポインタをいただければ幸いです。

4

1 に答える 1

2
@post.comments.build(...) do |c| 
  c.user = current_user 
end

私は通常、user_id を保護された属性として保持することを好みます。

于 2012-07-23T17:09:15.037 に答える