當我創建一個skid時,我試圖獲取用戶輸入的值,以便我可以多次創建該記錄。將輸入文本字段的值傳遞給控制器
in _form.html.erb是我所有代碼的位置。而在new.html.erb是我打電話與形式:
<%= render 'form' %>
這裏是形式,我試圖訪問的一段代碼:
<%= f.label :skid_count %>
<%= f.number_field :skid_count, :value => '1', :required => 'required', :pattern => ValidationValues.c_integer, :placeholder => ValidationValues.p_integer %>
在控制器我試圖做到這一點:
def create
@skid = Skid.new(params[:skid])
count = params[:skid_count].to_i
# Create record in the database, and return an appropriate message
respond_to do |format|
if @skid.save
for i in 1..count
Skid.new(params[:skid]).save
end
format.html { redirect_to @skid, notice: 'Skid was successfully created.' }
format.json { render json: @skid, status: :created, location: @skid }
else
format.html { render action: "new" }
format.json { render json: @skid.errors, status: :unprocessable_entity }
end
end
end
由於某種原因,計數變量不拿起數字,如果我硬編碼,並在那裏把3,它只是4次創造紀錄如預期的那樣,但如果我嘗試根據用戶輸入的內容獲取數字值,如上所示,它不起作用。它每次只創建1條記錄。
有沒有理由不能訪問該參數?
檢查日誌,並請張貼參數與請求 – nachbar
@nachbar我不知道該怎麼做......請你解釋一下嗎?我很新ruby和rails ... – Bojan
如果您在開發模式下運行測試服務器,日誌將位於日誌的子目錄中您的Rails應用程序,並且將成爲development.log該文件將爲每個請求列出所有傳遞給Rails請求的參數以及時間戳。另外,如果您在終端窗口中運行服務器,參數也會顯示在那裏,但可能會過快而無法看到它們。 – nachbar