更新:這似乎是錯誤可能是由於設計衝突。我使用了另一個應用程序中的一些內容,這些內容顯然使得設計變得瘋狂並且無法讀取用戶會話。我將從一個乾淨的安裝開始,看看我是否有更好的運氣。謝謝!通過控制器傳遞隱藏表單數據的軌道
我正在創建一個包含單個問題的頁面。在那個頁面上我有一個表單,人們可以回答這個問題。表單本身只有一個答案塊和一個提交按鈕。但是,我想將其與提交表單的用戶以及答案所鏈接的問題聯繫起來。爲了安全起見,我想在控制器中執行此操作,而不是視圖。答案表單將顯示在問題#索引頁面上。我目前收到以下錯誤:
undefined method `user' for #<AnswersController:0x007fe618e5cc10>
我懷疑,如果它使人們過去的用戶,我會得到同樣的「問題」
的問題#指數看起來是這樣的:
<div class="home_question">
<h1><%= @daily.question %></h1>
<div class="answer_form">
<%= form_for @answer do |answer| %>
<%= answer.label :answer, "What do you think?" %>
<%= answer.text_area :answer %>
<%= answer.button %>
<% end %>
</div>
</div>
的問題控制器看起來是這樣的:
def index
@daily = Question.find_by(show_month: Time.now.month, show_day: Time.now.day)
@answer = Answer.new
end
答案控制器看起來李柯本:
def index
@answers = Answer.all
@answer = Answer.new
end
def new
@answer = Answer.new
end
def create
@answer = Answer.new(answer_params)
@user = user(params[:id])
@question = question(params[:id])
if @answer.save
redirect_to root
else
render 'new'
end
end
private
def answer_params
params.require(:answer).permit(:answer, :users_id, :questions_id)
end
目前正由形式傳遞的數據是:
{"utf8"=>"✓",
"authenticity_token"=>"mA16+dg7+Edzxvu/FVWR5r8PZ9zdNaOyvOwSz1VpOXU=",
"answer"=>{"answer"=>"test"},
"button"=>""}
什麼是'用戶(PARAMS [:ID])'和'問題(PARAMS [:ID])' ?? – IS04 2014-08-31 16:51:31