Frage
Wie macht man einen Namespace-Controller in Merb, zum Beispiel einen Admin-Bereich auf der Website zu erstellen? In Rails würde ein Admin :: CategoriesController verwenden, ist dies ähnlich in Merb oder ist dies ein weiterer empfohlen, es zu tun?
Lösung
Die Namespace-Methode scheint es zu tun.
Dies ist in der Routen-Datei (router.rb) platziert:
namespace :admin do
resources :categories
end
Dies erzeugt Routen wie:
edit_admin_category - /admin/categories/:id/edit(.:format) delete_admin_category - /admin/categories/:id/delete(.:format) admin_categories - /admin/categories(/index)(.:format) new_admin_category - /admin/categories/new(.:format) admin_category - /admin/categories/:id(.:format)
Ich habe dann mein Controller in einem Modul wie folgt aus:
module Admin
class Categories < Application
def index
...
end
.
.
.
end
end
Ich bin nicht sicher, ob dies der empfohlene Weg ist, irgendwelche Vorschläge dazu wäre toll.
Andere Tipps
Die obige Antwort ist richtig, aber für das, was es wert ist, ich hatte eine harte Zeit versucht, den Einsatz der neuen Route mit link_to in meinen Ansichten zu machen.
ich am Ende immer diese aufzuarbeiten:
<%= link_to("Categories Admin", resource(:admin, :categories) %>