2013-06-26 124 views

回答

2

使用form_for

<%= form_for [@post, @comment] do |f| %> 

或者,您可以用長篇:

<%= form_for @comment, url: post_comments_path(@post) do |f| %> 

它將正確設置網址爲您服務。

你的控制器動作應該是這樣的:

def new 
    @post = Post.find(params[:post_id]) 
    @comment = @post.comments.build 
end 

def create 
    @post = Post.find(params[:post_id]) 
    @comment = @post.comments.build(params[:comment]) 
    if @comment.save 
    ... 
end 
+0

我應該我的控制器是什麼樣子? –

+0

@rob_mccann:更新以澄清這一點。 – PinnyM

+1

@rob_mccann就是那個'@ post.comments.build',它會在評論模型中爲你自動設置'post_id' :) – nzifnab