2016-06-07 10 views
1

Ich frage mich, was sind die Vor- und Nachteile der Verwendung von separaten Benutzermodellen für regelmäßige Benutzer und Administratoren wie User und Modelle.Was sind die Vor- und Nachteile der Verwendung von separaten Benutzermodellen für normale Benutzer und Administratoren?

Ein Vorteil, den ich mir vorstellen kann, ist die Autorisierung wird einfacher und es wird die Chance verringern, dass Sie Fehler bei der Autorisierung von Benutzern machen werden.

Ich plane derzeit, für eines unserer Projekte auf separate Benutzermodelle umzustellen. Da ich denke, dass es eine gute Lösung für unseren Anwendungsfall ist, da Admin-Benutzer nicht wirklich in der Lage sein müssen, die Dinge zu tun, die ein angemeldeter normaler Benutzer tun kann (wie seine Kaufhistorie, Wunschliste, etc.). .) und angemeldete reguläre Benutzer können nicht die Dinge tun, die Administratoren tun können (wie Berichte anzeigen, einen Benutzer verbieten, etc ...), aber ich wollte zuerst seine Vor-/Nachteile wissen.

Um einige zusätzliche Kontext zu geben, unser Projekt die folgenden Tools verwendet:

  • Ruby on Rails
  • Aktive Admin gem
  • Pundit gem
  • Devise gem

Antwort

0

Ihr Projekt hat alles, was Sie für eine benutzerfreundliche Verwaltung und Autorisierung von Rollenmodellen benötigen. Pundit ist ein schönes Werkzeug, das genau für die Vermeidung von Code-Duplizierung entwickelt wurde, wächst unermesslichen Controller und Ansichten. Ein Pros, um Benutzer und Administratoren zu teilen, kann ich mir vorstellen, ist vielleicht gut aussehende URL und Routen Helfer wie Admin-Pfad, App/Admins/2 usw., aber wenn Sie möchten, können Sie dies auch für Ihre rollenbasierten Projekte implementieren. Ich sehe keinen Sinn in diesem Ansatz, aber vielleicht vermisse ich etwas.