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:
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.1. Eine Datenbank erstellen
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.1. Installieren Sie die aktuellen cli-Versionen von mel global
Den REST-Servergenerator:
- npm install mel-server-cli --global
Den Angular-Clientgenerator
3.2. Generieren Sie eine Applikationsdatenbank und ein mel-server Projekt in nodejs
- 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
und starten Sie ihn mit
Im spÀteren Produktivbetrieb können Sie mehrere node-Server einsetzen.
3.3. Erzeugen Sie ein mel-client Angular-Projekt
-
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:
3.4. Verbinden Sie Ihre Datenbank mit einem Mandanten (Firma)
- 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.