簡體   English   中英

如何在 Rails 6 的 Devise 路由中嵌入路由資源

[英]How to embed a route resource in a Devise route in Rails 6

在正常情況下,如果想在 Ruby on Rails 的routes.rb文件中嵌入其他資源,它看起來像這樣:

# routes.rb

resources :parents do
  resources :children
end

以上將允許 url,如 http://localhost:3000/parents/1/children。

我的問題是如何使用存在於我的routes.rb文件中的默認devise_for:parents獲得相同的結果?

我試過:

# routes.rb

devise_for :parents do
  resources :children
end

它不能正常工作。

任何幫助是極大的贊賞!

devise_for只創建與注冊和登錄相關的路由,所以你仍然會使用

resources :parents do 
  resources :children
 end

在嵌套資源路徑的路由中。 這里有一個詳細的答案: Nested Resource with Devise - Rails3

如果生成 Devise 控制器和視圖,則還需要像這樣在路由中指定它們

  devise_for :parents, controllers: {
    sessions: 'parents/sessions',
    registrations: 'parents/registrations'
  }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM