2013-04-16 103 views
0

我正在從TasksController的show動作中實例化一個註釋表單,但是params沒有傳遞給表單。將參數傳遞給表格

class TasksController < ApplicationController 

def show 
    @task = Task.find(params[:id]) 
    @comment = Comment.new(task_id: @task.id) 
end 

的意見/任務/ show.html.erb:

<%= form_for @comment, html: {class: "centrera_parent"}, remote: true do |f| %> 
    <%= f.text_area :content, placeholder: "Add a comment", class: "centrera_child" %><br /> 
<%= f.submit "Post Comment" %> 
<% end %> 

回答

0

檢查你的HTML源文件,以更好地瞭解FormHelpers做。

隨着form_forf.text_field將產生名稱屬性的格式爲:

messages[subject] 

因此,您的PARAMS將在格式:

params[:messages][:subject] 

您還可以使用<%= debug params %>檢查什麼在PARAMS ,這非常有幫助。

+0

謝謝,但我仍然不明白如何正確地將某些東西傳遞給控制器​​的參數。實際上,我現在正在傳遞價值,但是輸入了錯誤的關鍵字。我的(工作)黑客現在是在視圖中使用<%= f.hidden_​​field'task_id',:value => params [:id]%>。 –