Rails 资源后带有 id 的路由

Rails route with id after resource

我有嵌套的路由,但我很难按照我想要的方式进行格式化。 我的 routes.rb 有以下

resource :loan_application do
  scope ":loan_application_id" do
    resources :wizard, only: [:show, :update]
  end
end

当我点击 link 创建新资源时:

<%= link_to business_loan_application_path(@user), method: :post %>

我被发送到如下所示的 URL

http://localhost:3000/businesses/69/163/loan_application/wizard/eligibility

出于某种原因,loan_id (163) 在 /loan_application 之前。我希望它出现在 /loan_application 之后。

当我搜索路由时,我发现了同样的问题:

 business_loan_application_wizard GET    /businesses/:business_id/:loan_application_id/loan_application/wizard/:id(.:format) wizard#show

在我的应用程序中,我创建了没有你范围的路由:

resources :loan_application do
  resources :wizard, only: [:show, :update]
end

这让我找到了我需要的路径