2010-09-22 82 views
0

我有一個意見表,其中包括用於USER_ID列如何更新軌道3的以下行包括current_user.user_id

我有我的意見控制器後續

def create 
    @commentable= context_object() 
    @comment = @commentable.comments.build(params[:comment]) 
    . 
    . 

問題是這不會傳遞current_user的user_id。如何更新上面是像current_user.comments.build ....

感謝

回答

1

最簡單的將只是做:

@comment.user = current_user 

你應該能夠做到這一點太:

current_user.comments << @comment 
+0

試過,沒有工作,仍插入爲NULL。此外,我不希望它是像current_user.comments.build .....這樣我不必在評論模型中訪問user_id列attr? – AnApprentice 2010-09-22 04:26:22

+1

我認爲在解決方案中,我建議'user_id'需要可訪問。如果它不可訪問,它會解釋爲什麼你的'user_id'列中仍然有'NULL'。 'context_object()'似乎不是一個標準的rails3函數。你能解釋它的作用嗎? – Mischa 2010-09-22 04:39:05

+0

感謝CaptainT,我正在實施評論,看看這裏的私人功能:http://github.com/rbritom/Simple_polymorphic_nested_comments/blob/master/app/controllers/comments_controller.rb您怎麼看? – AnApprentice 2010-09-22 04:53:07