1. Über mel
Mel ist ein Entwicklungsframework für client-server Angular-Anwendungen. Es soll dem Entwickler langweilige gleichartige Tätigkeiten abnehmen, damit er sich möglichst nur mit der Geschäftslogik und dem dahinterliegenden Datenmodell beschäftigen muss. Es werden SQL-Datenbanken mit Transaktionsmechanismen unterstützt, für die ein Treiber in javascript verfügbar ist.
Mel wurde mit folgenden Datenbanken getestet:
- mySql
Verwenden Sie eine vorhandene Datenbank (Datenmodel).
Mel erstellt aus der Datenbank eine Applikationsdatenbank, aus der die Quellen für einen REST-Server-Projekt (nodejs) und ein Angular-Projekt (Client) erzeugt werden.
In Mel ist ein Rechtesystem integriert, dass die Zugriffe auf Tabellen und Geschäftslogik pro Mandant (Firma) einschränkt. Ein Mandant (Firma) entspricht einer Datenbank.
2. Was Sie benötigen:
- nodejs
- Angular
- npm
- Datenbank mit dem Datenmodell Ihrer Anwendung
3. Einstieg
$3
Modellieren Sie Ihre Datenmodel und erstellen eine Datenbank mit der Workbench Ihres Vertrauens und vergessen bitte nicht, die Tabellenrelationen zu vollständig zu setzen.
$3
#### Den REST-Servergenerator:
- npm install mel-server-cli --global
#### Den Angular-Clientgenerator
- npm install mel-client-cli --global
$3
- npm init
- npm install --save mel-server
- mel new server --app
myAppName [options]
options: [
svr-port db-type db-name db-ip db-port db-user db-pwd [company] ] | [
config]
+
--db-type *Datenbanktyp (mysql, postgres, mssql...)
+
--db-ip ip-adresse des datenbankservers
+
--db-port Port des Datenbankservers
+
--db-user Admin-Benutzer des Datenbankservers
+
--db-pwd Passwort des Datenbankbenutzers
+
--svr-port Port des Restservers
+
--config Dateiname der Konfigurationsdatei
Kompilieren Sie den Server mit
- npm run build
und starten Sie ihn mit
- npm run start
Im späteren Produktivbetrieb können Sie mehrere node-Server einsetzen.
$3
- npm init
- ng new
myAppName
- npm install --save mel-client
- mel new client --app
myAppName --svr-ip mel-server-ip --svr-port mel-server-port
Eine app.config - Datei wird erzeugt, die drei (
dev, test, prod) identische Konfigurationen mit dem angegeben mel-server-endpoint enthalten. Wenn die Test- und Produktionsumgebung bekannt ist, können hier die entsprechenden Endpunkte notiert werden.
!!! Wichtig !!! Verwenden Sie für mel-server und mel-client den identischen
myAppNamen.
Kompilieren Sie den Client:
- ng build
$3
- mel assign
myDatabasename [
myCompanyName]
Wenn Sie
myCompanyName weglassen, wird
myCompanyName gleich
myDatabaseName
Ihre Datenbank wird
Es werden die Tabelleninformationen Ihres Datenmodells importiert und in der Liste angezeigt.
Der automatisch Import Ihres Datenmodells erfolgt nur dann, wenn die Metadaten noch nicht im System sind. Falls Sie also nachträglich Änderungen oder Ergänzungen vornehmen, müssen Sie den Import manuell ausführen.
Sie können nun die Tabellenfelder um die kalkulierten Felder und Feldfilter ergänzen. siehe auch todo
Generieren Sie jetzt die Metadaten für den Server und für den Client, kompilieren und starten dann jeweils neu.