在设计中,表单看起来像这样:
form_for(:resource, @resource, :url => edit_user(resource), :html => {:method=> put}) do |f|
但我想知道,是否必须包含method =>放? REST本应该已经解决了吗?
我尝试过使用form_for(@resource),但它没有获得编辑用户路径。我想我在这里遗漏了一些东西。任何帮助都会非常有帮助。谢谢!
答案 0 :(得分:2)
其中一个导轨指南talks about this,这是一个片段:
Rails框架鼓励RESTful设计您的应用程序, 这意味着你将会发出很多“PUT”和“DELETE”请求 (除了“GET”和“POST”)。但是,大多数浏览器都不支持 提交表格时除“GET”和“POST”以外的方法。
Rails通过在POST上模拟其他方法来解决此问题 带有名为“_method”的隐藏输入,设置为反映 期望的方法......
使用:html => {:method=> put}
填充此隐藏输入,这会给rails带来一些提示。使用此提示和您提交给rails的网址可以确定将表单提交给哪些其他操作。
阅读我链接的导轨指南后,事情应该变得更加清晰。