我有一個form_for一條評論。評論belongs_to問題。我在我的問題#show view中有一個評論表單,這是我form_for的地方。我在我的問題#show controller操作中創建了評論對象@comment。當我提交表單時,它會調用註釋#create controller操作。但是,我需要一個名爲issue_id的變量。我在問題#show view中擁有issue_id,我甚至可以將@comment對象設置爲具有issue_id。但是,當它傳遞給註釋#create controller時,issue_id不會在params [:comment]中傳遞,所以當註釋被創建並保存時,它不在那裏。下面是我的文件:似乎無法將變量傳遞給我的控制器
問題#顯示視圖:
<%= form_for @comment do |f| %>
<%= render 'comment_fields', :f => f %>
<%= f.submit "Submit" %>
<% end %>
問題#顯示控制器:
def show
@issue = Issue.find(params[:id])
@votes = Votership.where(:issue_id => @issue.id)
@current_user_vote = @votes.where(:user_id => current_user.id).first
@comment = Comment.new(:issue_id => @issue.id)
end
和評論#創建控制器在評論被創建:
def create
@comment = Comment.new(params[:comment])
@comment.user = current_user
@comment.save
redirect_to :back
end
我試着在窗體中添加一個隱藏字段,但它一直創建一個值的散列,關鍵是t他issue_id,但我不知道如何設置隱藏字段的值,這是奇怪的。我如何正確地做到這一點?
PS comments belongs_to issues。問題有很多意見。發佈belongs_to應用程序。應用程序有很多問題。
哦我的!!!我一直試圖讓這個工作這麼久......這工作!謝謝。現在......這是做這件事的最好方法嗎?當我爲表單準備對象時,它包含issue_id,是否有更好的方法將該信息傳遞給註釋#create controller actioN? –