Struktur
Das App folgt einer Reihe von Konventionen, die dabei helfen, den Code zwischen allen brandbox Apps konsistent zu halten. Siehe Namenskonventionen der Apps.
Codeblock | ||
---|---|---|
| ||
brandbox/
└─ {package-name}/
│
├─ resources/
│ ├─ .phpstorm.meta.php/
│ ├─ data.conf/
│ ├─ languages/
│ │ ├─ de.xml
│ │ └─ en.xml
│ ├─ js/
│ ├─ dashboard.json
│ └─ dashboard-config.json
│
├─ src/ (PSR-4)
| └─ {PackageNamespace}/
| └─ {PackageName}/
| ├─ Lib/
| | ├─ Entity/
| | ├─ Event/
| | ├─ Exceptions/
| | ├─ Execute/
| | ├─ Listener/
│ | ├─ Migration/
| | ├─ Repository/
| | ├─ Request/
| | ├─ Structure/
| | └─ Subscriber/
| ├─ config.json
| ├─ crud.json
| ├─ modelling.json
| ├─ structure.json
| ├─ widget.json
| └─ *Manager.php
| └─ Engine.php
│
├─ test/ (PSR-4)
│ ├─ Cases/
│ ├─ Resources/
│ └─ phpunit.xml.dist
│
└─ composer.json |
...
Ordner | Inhalt |
---|---|
Controller und Routing | |
/src/{PackageNamespace}/{PackageName}/Lib/Engine.php | Basis-Controller. Siehe Controller und Routing. |
/src/{PackageNamespace}/{PackageName}/Lib/*Manager.php | Basis-Controller. Siehe Controller und Routing. |
/src/{PackageNamespace}/{PackageName}/Lib/Execute/ | Auszuführender Code, der statusändernden Character hat. Siehe Controller und Routing |
/src/{PackageNamespace}/{PackageName}/Lib/Request/ | Auszuführender Code, der Inhalte an einen Endpunkt ausgibt. Siehe Controller und Routing |
Doctrine | |
/src/{PackageNamespace}/{PackageName}/Lib/Entity/ | Doctrine-Entities. Siehe Entitäten um individuelle Properties anreichern |
/src/{PackageNamespace}/{PackageName}/Lib/Repository/ | Doctrine-Repositories |
Crud | |
/src/{PackageNamespace}/{PackageName}/crud.json | Definition von geführten Aktionen zum Löschen/Kopieren. Siehe Crud. |
Modelling | |
/src/{PackageNamespace}/{PackageName}/widget.json | Definition vorhandener Datenbanktabellen (Entities) sowie die Beziehung zwischen Datenbanktabellen. Siehe Widget. |
/src/{PackageNamespace}/{PackageName}/structure.json | Strukturdefinitionen. Siehe Widget. |
/src/{PackageNamespace}/{PackageName}/modelling.json | Modellingdefinition. Siehe Widget. |
PSR-14 / Events | |
/src/{PackageNamespace}/{PackageName}/Lib/Event/ | Events, die von \Symfony\Contracts\EventDispatcher\Event ableiten (siehe Event). |
/src/{PackageNamespace}/{PackageName}/Lib/Listener/ | Listener enthalten in brandbox den auszuführenden Code. Sie werden von den Subscribern aufgerufen und ausgeführt. |
/src/{PackageNamespace}/{PackageName}/Lib/Subscriber/ | Subscriber, die von \Symfony\Component\EventDispatcher\EventSubscriberInterface ableiten. |
Allgemeines | |
/src/{PackageNamespace}/{PackageName}/Lib/Exceptions/ | Ein zentraler Ort für alle Exceptions des Packages |
/src/{PackageNamespace}/{PackageName}/Lib/Migration/ | Migrationen. Siehe Migrate. |
Ressourcen | |
/resources/.phpstorm.meta.php/ | PhpStorm advanced metadata |
/resources/data.conf/ | XSLT-Datein zur Verwendung bei Ex- und Import-Transformationen. Siehe Transformationen. |
/resources/languages/ | Zwei Dateien, die immer existieren müssen: de.xml und en.xml. Siehe Übersetzungen (i18n). |
/resources/js/ | Javascript-Dateien der App. |
/resources/dashboard.json | Eine Datei zur Strukturierung eines Dashboards. Siehe Dashboard. |
/resources/dashboard-config.json | Eine Datei zur Erstellung eines Dashboards. Siehe Dashboard. |
...