joh*_*nml 2 rest ruby-on-rails
我有一个[有点]宁静的路线设置:
map.resources :forgotten_passwords,
:as => 'forgotten-passwords',
:except => [:destroy, :show, :delete, :index]
Run Code Online (Sandbox Code Playgroud)
forgotten_passwords POST
/forgotten-passwords(.:format)
{:action=>"create", :controller=>"forgotten_passwords"}
new_forgotten_password GET
/forgotten-passwords/new(.:format)
{:action=>"new", :controller=>"forgotten_passwords"}
edit_forgotten_password GET
/forgotten-passwords/:id/edit(.:format)
{:action=>"edit", :controller=>"forgotten_passwords"}
forgotten_password PUT
/forgotten-passwords/:id(.:format)
{:action=>"update", :controller=>"forgotten_passwords"}
如果访问者通过GET访问/忘记密码,则会显示空白页面.然而,日志显示异常"ActionController :: MethodNotAllowed:仅允许发布请求."
在这种情况下,我想重定向到另一个操作/视图并向访问者显示一个令人愉快的错误消息.我认为访问者正在点击电子邮件中的链接,该链接会切断网址的末尾.
我意识到我可以在创建中添加GET路由,然后在控制器中处理错误,但有些东西告诉我有更好的方法.
显式禁用:路由中的索引表示已禁用/ forgotten-passwords GET请求.如果删除它,您应该再次使用有效的索引方法.
在索引方法中,您可以创建一个解释情况的页面.
| 归档时间: |
|
| 查看次数: |
2739 次 |
| 最近记录: |