對不起,如果標題有點混亂。我有一個Item
的表單,其中name
。有一個文本字段,用戶可以在其中輸入名稱並提交。但是,如果用戶沒有輸入任何內容並點擊提交,Rails會給我一個param not found: item
錯誤,我不確定誰來解決這個問題。Rails 4:如何處理沒有選擇任何內容的提交表單?
items_controller.rb
def new
@item = Item.new()
respond_to do |format|
format.html
format.json { render json: @item }
end
end
def create
@item = Item.new(item_params)
respond_to do |format|
if @item.save
format.html { redirect_to items_path }
format.json { render json: @item, status: :created, location: @item }
else
format.html { render action: 'new', :notice => "Input a name." }
format.json { render json: @item.errors, status: :unprocessable_entity }
end
end
end
private
def item_params
params.require(:item).permit(:name)
end
應用程序/視圖/項目/ new.html.haml
= form_for @item do |f|
= f.label :name
= f.text_field :name
= f.submit "Submit"
的params.require(:項目)的部分是什麼原因造成的錯誤。當params [:item]不存在時處理錯誤的約定是什麼?
你不應該得到這個錯誤,什麼是張貼PARAMS當你看到日誌? –