【发布时间】:2018-11-30 09:13:35
【问题描述】:
我有一个PasswordsController 来处理密码恢复,我想将其作为单一资源进行路由。
来自路由器的代码:
resource :password
我想使用生成的路由如下:
/password/new # User enters email
/password/create # Send email with link to password edit form with token
/password/edit # User edits password
/password/update # Password is changed
但由于某种原因,rails 只生成以下路线:
password GET /password(.:format) passwords#show
PATCH /password(.:format) passwords#update
PUT /password(.:format) passwords#update
DELETE /password(.:format) passwords#destroy
POST /password(.:format) passwords#create
根据文档,还应该有一个edit 路径和一个new 路径。
他们为什么不见了?
(这是轨道 5.2.1.1)
编辑:如 cmets 中所述,问题一定出在我的应用配置的某个地方,因为干净的 Rails 应用无法重现此问题。
【问题讨论】:
-
@AjayBarot:您链接的答案说
resource应该生成新的/编辑路线。你想说什么? -
无法在全新的 Rails 5.2.1.1 应用程序中重现。我看到所有 6 条路线。您的代码中的其他内容正在干扰。
-
@SergioTulentsev 是的,这可能是我的应用程序中的一些设置。我只是不知道它可能是什么。我已经用一个新的 rails 应用程序中的 development.rb 对其进行了测试。没有成功。