Erstellen eines Erweiterungsframeworks für eine Rails-App

Ich beginne mit der Recherche, was ich brauche, um ein Pluginsystem auf Benutzerebene (wie Wordpress-Plugins) für eine Rails-App zu erstellen. Daher würde ich mich über einige allgemeine Hinweise / Ratschläge freuen. Mit Plugin auf Benutzerebene meine ich ein Paket, das ein Benutzer in einen Ordner extrahieren und auf einer Administrationsoberfläche anzeigen lassen kann, sodass er zusätzliche Konfigurationen hinzufügen und dann aktivieren kann.

Was ist der beste Weg, dies zu tun? Gibt es ein anderes OpenSource-Projekt, das dies bereits tut? Was bietet Rails selbst bereits für Plugins auf Programmiererebene, die genutzt werden könnten? Gibt es Rails-Plugins, die mir dabei helfen könnten?

Ein Plugin müsste in der Lage sein:

ühren Sie eigene Migrationen au (mitDie? es ist undokumentiert)have Zugang zu meinen Modellen (Plugins bereits)have Einstiegspunkte für das Hinzufügen von Inhalten zu Ansichten (kann mit @ gemacht werdcontent_for und yield) Ganze Ansichten oder Teilansichten ersetzen (Wie?Provide seine eigenen Administrator- und User-zugewandten Ansichten (Wie?Erstelle deine eigenen Routen (oder vielleicht nur seine Anwesenheit ankündigen und @ lassmic erstelle die Routen dafür, um zu vermeiden, dass Plugins sich gegenseitig auf die Fersen treten)

Sonst noch was, was ich vermisse?

Auch gibt es eine Möglichkeit zu begrenzen, auf welche Tabellen / Aktionen das Plugin in Bezug auf Migrationen und Modelle Zugriff hat, und auch deren Zugriff auf Routen zu begrenzen (möglicherweise können sie Routen einschließen, aber nicht entfernen)?

P.S .: Ich werde versuchen, diese Informationen auf dem neuesten Stand zu halten. Ich werde Informationen und relevante Antworten zusammenstellen, um eine Art Leitfaden für andere zu haben.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage