簡體   English   中英

Rails 3非資源命名空間路由

[英]Rails 3 non-resourceful namespaced route

我注意到

namespace :admin do
  namespace :manage do
    get 'list'
  end
end

實際上成功調用了以下操作(針對/ admin / manage / list):

class Admin::ManageController
  def list
    render :text => 'success'
  end
end

這是一種直觀的(這就是我嘗試過的原因),但是http://guides.rubyonrails.org/routing.html中的任何地方都沒有涉及

有人可以肯定地說出它是標准的預期功能,在下一個版本或其他版本之后不會停止工作嗎?

這並不意外,並且可以像這樣工作。 但是,更典型的做法是

namespace :admin do
  resources :manage do
     collection do
       get 'list'
     end
  end
end

namespaceresources之間的主要區別在於,默認情況下,后者為CRUD操作提供了標准路由。 他們兩個都路由到Admin::ManageController

他們也有類似的選擇。 有關namespaceresources請參閱文檔

如果Manage是可以在您的應用程序中創建和銷毀的資源,則使用resources更有意義。 如果它只是為某些動作分隔路由的標識符,則使用namespace

暫無
暫無

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

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