2011-09-02 11 views
5

私はRails 3.1を使用しており、ディスカッションフォーラムで作業しています。私はTopicというモデルを持っていて、それぞれのモデルはPostです。ユーザーが新しいトピックを作成するときには、最初にPostも作成する必要があります。しかし、私はどのように私が同じ形でこれを行うことができるか分からない。ここに私のコードはあります:複数のモデルが同じ形式でRails 3.1にありますか?

...しかし、これは動作していないようです。何か案は?

ありがとうございます!

答えて

6

はあなたが必要なすべてを持っているようです。しかし、その後、あなたのTopicコントローラでこの

def new 
    @topic = Topic.new 
    @topic.posts.build 
end 

を追加...

最初の変更この

<%= f.fields_for :posts do |ff| %> # :posts instead of :post 

<%= f.fields_for :post do |ff| %> 

からあなたのビューで、このラインより具体的にしますそれはあなたを得る必要があります。

+0

+1です。 – Joseph

3

あなたの特定のケースについてはライアンベイツherehere

から非常に良い説明:(:ポスト)、代わりの協会(:投稿)あなたはfields_for呼び出すあなたがモデルを使用しています。

また、<%= ... %>の適切な使用を確認してください。レール3.xでは、建築物の大理石が変わった。ヘルパー(form_for、fields_forなど)をブロックする必要はありませんし、インラインヘルパー(text_field、text_areaなど)は必要とします。パブロの答え@

+0

リンクのおかげで、私は私の質問に、特定の何かを探していました。実際の例は – jasonbogd

関連する問題