2017-05-12 3 views
1

Ich möchte UI-Komponenten erstellen, damit Benutzer Daten in einer bestimmten Struktur bearbeiten können. Ich entschied mich, Cells einen Versuch zu geben, aber ich muss den gesamten Code in einem Edelstein kapseln, da ich diese Komponenten als Erweiterung zu einem vorhandenen Edelstein (criteria_operator), die die Quelle der für die Daten verwendeten Klassen bereitstellen möchten.Erstellen eines Gems für Zellenkomponenten

Ist das möglich? Und wenn ja, wie fange ich an? Normalerweise erwartet Zellen, dass Sie Ansichten und Modelle in bestimmten Ordnern der Standard-Rails-Ordnerstruktur erstellen. Beim Erstellen eines Edelsteins habe ich nur den lib-Ordner ...

Wenn Sie weitere Informationen benötigen, bitte nur darauf hinweisen, in den Kommentaren. Ich war mir nicht sicher, ob es etwas Nützliches gibt, das ich anbieten könnte.

Haftungsausschluss: Das erwähnte Juwel wurde von mir erstellt, und diese Frage soll es nicht fördern.

Antwort

1

Um eine andere gem-criteria_operator, benutzen Sie einfach fügen Sie es Ihrer gemspec:

s.add_runtime_dependency('gem_name', '~> <version>') 

oder fügen Sie es Gemfile Ihres Edelsteine.

Um Modelle und Ansichten in Ihrem Edelstein zu haben, können Sie rails engine verwenden. Mit der Rails-Engine können Sie eine bestimmte Rails-Anwendung oder eine Teilmenge davon in ein Juwel einbinden.

+0

Danke, ich weiß, wie man sich auf andere Edelsteine ​​verlassen kann. Also muss ich wirklich einen Motor benutzen? Könnten Sie das weiter ausführen? Ich habe selbst nie einen erstellt ... –

+0

Engines sind kleine Rails-Anwendungen, die zu einer anderen Anwendung hinzugefügt werden können, um ihr Funktionalität zu bieten. Wenn Sie eine Schienenverzeichnisstruktur haben und Modelle und Ansichten hinzufügen möchten, denke ich, dass Sie das suchen Um eine Rails Engine zu erstellen, führen Sie einfach den folgenden Befehl: 'Rails Plugin neu my_engine --mountable'. Es gibt eine Menge guter Tutorials auf Rails Engine, Sie können in ihnen suchen und sehen, ob es Ihrem Anwendungsfall entspricht. – slal

+0

danke! Ich werde das ausprobieren und Ihre Antwort akzeptieren, wenn es funktioniert –

Verwandte Themen