【发布时间】:2012-09-14 17:13:10
【问题描述】:
我的简单表单不做 POST。我一直在看这个,但看不出有什么问题(我确定它在我的路线中)。这是我所拥有的:
查看:
views/buyers/new.html.erb
<%= form_for(@buyer) do |f| %>
<%= f.text_field :phone %><br />
<%= f.text_field :make %><br />
<%= f.text_field :model %><br />
<%= f.submit %>
<% end %>
控制器:
BuyersController
def new
@title = "Welcome to Car Finder"
@buyer = Buyer.new
end
def create
@buyer = Buyer.new(params[:buyer])
if @buyer.save!
redirect_to success
else
redirect_to :back
end
end
路线:
resources :buyers
耙路线:
buyers GET /buyers(.:format) buyers#index
POST /buyers(.:format) buyers#create
new_buyer GET /buyers/new(.:format) buyers#new
edit_buyer GET /buyers/:id/edit(.:format) buyers#edit
buyer GET /buyers/:id(.:format) buyers#show
PUT /buyers/:id(.:format) buyers#update
DELETE /buyers/:id(.:format) buyers#destroy
当我提交表单时,它停留在同一页面上,从不执行创建操作。以下来自日志
Started GET "/?..[params]..."
Processing by BuyersController#new as HTML
感谢您提供的任何帮助
【问题讨论】:
-
买家控制器中的创建操作是什么样的?请分享。
-
您在提交表单时遇到什么错误?
-
抱歉,我更新了问题。我没有收到错误。它只是将参数添加到 URL 并保持在同一页面上
-
我认为它可能是#create操作的else中的redirect_to :back,但我在它上面放了一个调试器,它永远不会到达那个方法
-
请将生成的 html 代码发布到 pastebin.com 或 paste.org。我猜你错过了一些 javascripts...
标签: ruby-on-rails routing