2016-08-01 32 views
2

Was wäre die beste Vorgehensweise, um benutzerdefinierten Code (Bibliothek von Funktionen) in einem Projekt mit Benutzerfrost zu haben?Userfrosting Best Practice für Hilfsfunktionen

Ab sofort modifiziere ich bestehende userfrosting Controller, die den netten prägnanten Code aufblähen.

Ich denke, es gibt einen netten Weg, um benutzerdefinierte Funktionen an einem Ort zu halten, der den Code von Userfrosting nicht beeinträchtigt und dadurch beim Upgrade von Userfrosting nicht stark beeinträchtigt wird.

Im Moment möchte Ich mag einige benutzerdefinierte Funktionen für Benachrichtigungen, Barcode usw. ein Anbieter Ordner unter Komponist

Guess haben wäre mit ideal? Wenn ja, wie?

Hat userfrosting irgendeine Erweiterbarkeit wie symfony?

Jede Hilfe/Zeiger wird geschätzt!

Danke!

+0

Spurgeon könnten Sie genauer sein? So wie es jetzt aussieht, wird diese Frage wahrscheinlich als breit und meinungsorientiert betrachtet. – alexw

+0

Hallo Alex, danke! Entschuldigung wegen der Verwirrung, Bearbeiten meiner Frage .. – Spurgeon

Antwort

2

Ab Version 0.3.1 gibt es keine saubere Möglichkeit, den vom Kern versendeten Code vom Entwicklercode zu trennen. Für kleinere Updates innerhalb einer Version (also Hotfixes auf 0.3.1) ist der beste Weg, um auf dem neuesten Stand zu bleiben, indem Sie git verwenden, um Ihr Projekt zu einem fork des UserFrost-Repository zu machen.

So könnte zum Beispiel spurgeon/brood-crm (Ihr Projekt Repo) als Gabel von userfrosting/UserFrosting haben. Sie können dann userfrosting/UserFrosting als upstream remote für Ihr Repo festlegen. Wenn ein Hotfix für userfrosting/UserFrosting freigegeben wird, können Sie sync your fork with the upstream. Dadurch werden Änderungen am Hauptrepo in Ihr Projekt übernommen und Sie haben die Möglichkeit, etwaige Konflikte bei der Zusammenführung zu lösen (hoffentlich wird es keine geben).

Für Leute, die nicht vertraut sind mit der Unterscheidung zwischen git und GitHub, sollte ich darauf hinweisen, dass Sie all dies lokal tun können, ohne Ihre Gabel auf GitHub veröffentlichen.

UserFrosting 4 wird (endlich) ein modular, fully extendable Design haben. Anstatt den bereitgestellten Code direkt ändern zu müssen, können Sie die Kernrouten, Vorlagen, Schemata, Assets usw. in einem separaten Verzeichnis überschreiben. Ein Upgrade von Version 0.3.x auf Version 4 muss jedoch wahrscheinlich manuell durchgeführt werden.

+0

Vielen Dank Alex! Das beantwortet unsere Probleme. – Spurgeon

+1

Danke @alexw Ich werde auf diese Veröffentlichung warten! :) – input