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?

War es hilfreich?

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) %>
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top