[英]Devise do not generate rails standard URL
我有用于Devise的此设置
devise_for :users, :controllers => {
:confirmations => "confirmations",
:registrations => "registrations"} do
put "confirm_user", :to => "confirmations#confirm_user"
end
当我跑步时
rake route
我有奇怪的路线给registrations_controller特别是edit_path
edit_user_registration GET /users/edit(.:format) registrations#edit
PUT /users(.:format) registrations#update
DELETE /users(.:format) registrations#destroy
问题是例如第一个用户的编辑URL。
我期望
/users/1/edit
但是我有
/users/edit.1
我希望这条路线行不通,但确实可以。 现在,我不确定是否犯了一些错误,或者设计是否以这种方式生成了路线。
如果它以这种方式生成路由,那么请求的格式在哪里?
我不敢相信URL可能看起来像这样。
/users/edit.1.js
谢谢你的建议吗?
这个问题与编辑网址无关,而是取决于链接到编辑网址的页面。 您可能有此形式的链接
link_to "Settings", edit_user_registration_path(@user)
指向编辑网址,该网址会生成意外的网址
/users/edit.id
您只需替换掉省略@user的链接,如
link_to "Settings", edit_user_registration_path
那个.
在显示格式时始终存在。 Devise没什么,也没有错。 你们都很好!
我正在将ID传递到编辑路径,但是它不希望有ID。
edit_user_registration_path仅适用于current_user,因此不需要user.id。
这个问题可能也有帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.