Frage

Ich versuche, einige benutzerdefinierte Rollen in Spree-spezifischen Berechtigungen zu geben. Kann diese Antwort überall nicht finden

rolle_ability.rb generasacodicetagpre.

Ich dachte, das könnte eine populäre Idee sein, einen Benutzer mit Rollenmanager nur Produkte und andere bestimmte Modelle verwalten zu lassen ...

wenn ich wechsle generasacodicetagpre.

bis generasacodicetagpre.

es funktioniert wie erwartet ... Ich kann auf den gesamten Admin-Bereich zugreifen

Ich möchte nur, dass der "Händler": Produkte verwalten Tho !!;)

"admin" ist nur eine Rolle, die einem Benutzer verknüpft ist, dh alle Rollen sind Benutzer.

Sie können wahrscheinlich sehen, wo dies läuft, Einzelhändler können sich anmelden und verkaufen. Nun, das ist das Ziel.

Alle Zeiger ??

War es hilfreich?

Lösung

Es gibt eine native Art in Spree_Auth_Devise, um dies zu tun.Es war nicht dokumentiert, aber jetzt ist es.

https://github.com/spree/spree_auth_devise Abschnitt: "Verwenden in einem vorhandenen Schienenantrag"

Andere Tipps

Eine schnelle Lösung dieses Problems wäre es, eine Autorize_ADMIN-Methode zu einem Administrator :: ProdukteController Decorator.rb hinzuzufügen

App / Controller / admin_products_controller_decorator.rb generasacodicetagpre.

HINWEIS: Damit wird das eingestellte Eingestellte in Auth / App / Controller / admin_orders_controller_decorator.rb überschreibenp>

Das heißt, die Rolle muss Zugriff auf das: Admin und: Aktion für das Produkt haben .. dh:

app / modelle / händler_abilität.rb generasacodicetagpre.

sollte den Einzelhändlern ermöglichen, Produkte auf dem Administrator zu lesen.

Vergessen Sie nicht, dies einem Initialisierer hinzuzufügen:

config / initialisierer / spree.rb generasacodicetagpre.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top