
Low-Code-Admin-Panel und Business-Intelligence-Rails-Engine (kein DSL – über die Benutzeroberfläche konfigurierbar) .
? Demo-App | ? Funktionsübersicht | Profi

Fügen Sie diese Zeile zur Gemfile Ihrer Anwendung hinzu:
gem 'motor-admin'Und dann ausführen:
$ bundle installMigration erstellen und ausführen:
$ rails motor:install && rake db:migrate

Alles im Admin-Panel kann über die intuitive Benutzeroberfläche für Einstellungen konfiguriert werden, die über das Symbol in der oberen rechten Ecke geöffnet werden kann.
Die auf der Ressourcenseite angezeigten Daten können über SQL-Abfragen und Dashboards, die als Registerkarte an die Ressource angehängt sind, vollständig angepasst werden. Normalerweise sollten Abfragen, die zum Anzeigen von Ressourcendaten verwendet werden, die Variable {{resource_name_id}} enthalten.
Erfahren Sie mehr über Ressourcenanpassungen

Benutzerdefinierte Ressourcenaktionen können über den Aufruf der Active Record-Methode, den API-Endpunkt oder benutzerdefinierte Formulare hinzugefügt werden. Außerdem ist es möglich, die Standardaktionen zum Erstellen/Aktualisieren/Löschen zu überschreiben.
Jede Methode oder jedes Attribut des ActiveRecord-Modells kann dem Admin-Panel zugänglich gemacht werden, indem eine neue Spalte mit dem Namen hinzugefügt wird, der mit dem Methodennamen aus dem Ressourcenmodell übereinstimmt:
class Customer < ApplicationRecord
has_many :orders
def lifetime_value
orders . sum ( & :total_price )
end
end 

Werte aus den Formularfeldern können im API-Pfad über die {field_name} -Syntax verwendet werden: /api/some-endpoint/{resource_id}/apply .
Erfahren Sie mehr über den Builder für benutzerdefinierte Formulare

Abfragen können eingebettete Variablen über die {{variable}} -Syntax (Mustache) enthalten. Mit der Syntax {{#variable}} ... {{/variable}} können Sie entscheiden, ob Bedingungen innerhalb des Bereichs in die Abfrage einbezogen werden sollen.

Daten aus der SQL-Abfrage können dargestellt werden als: Tabelle, Zahl, Liniendiagramm, Balkendiagramm, Kreisdiagramm, Trichter, Markdown.

SQL-Abfragen können in Dashboards organisiert werden, um eine praktische Darstellung der Daten zu erstellen.

Mithilfe der Benachrichtigungsfunktion können Abfragedaten regelmäßig per E-Mail gesendet werden. Das Intervall der Benachrichtigungs-E-Mail kann in natürlicher Sprache festgelegt werden, z. B. every day at midnight , every Monday at 8 PM , every weekday at 6AM and 6PM , every minute .
Die Absenderadresse kann mithilfe der Umgebungsvariablen MOTOR_ALERTS_FROM_ADDRESS angegeben werden.

Die Geheimdienstsuche kann über die Schaltfläche oben rechts oder mit der Tastenkombination Cmd + K geöffnet werden.
Motor Admin ermöglicht das Festlegen von Berechtigungen auf Zeilen- und Spaltenebene über cancan gem. Administrator-UI-Berechtigungen sollten in der Datei app/models/motor/ability.rb in der Klasse Motor::Ability definiert werden. Weitere Informationen zum Definieren von Benutzerberechtigungen finden Sie im Motor Admin-Handbuch und in der CanCan-Dokumentation.
Motor Admin ist standardmäßig so konfiguriert, dass es Uploads zu dem Anbieter durchführt, den Sie in Ihrer Datei storage.yml für Active Storage konfiguriert haben. Wenn Sie große Uploads in Motor Admin verwenden, müssen Sie direkte Uploads aktivieren, indem Sie die folgende ENV-Variable festlegen.
MOTOR_ACTIVE_STORAGE_DIRECT_UPLOADS_ENABLED=trueHinweis: Derzeit sind dadurch direkte Uploads weltweit möglich
Motor Admin kann Rails ActiveRecord i18n-Schlüssel verwenden, um Ressourcenübersetzungen zu rendern:
es :
activerecord :
models :
customer :
one : Cliente
other : Clientes
attributes :
customer :
name : Nombre
scopes :
customer :
enabled : Activado
Alle Admin-Panel-Konfigurationen werden automatisch in der Datei config/motor.yml gespeichert. Es wird empfohlen, diese Datei in das Git-Repository der Anwendung aufzunehmen, um die Konfigurationen des Admin-Panels in verschiedenen lokalen und Remote-Umgebungen immer synchron zu halten.
Es ist möglich, die Konfigurationen des Admin-Panels für die lokale Entwicklung mit der Remote-Produktionsanwendung über den Task rake motor:sync zu synchronisieren:
MOTOR_SYNC_REMOTE_URL=https://remote-app-url/ MOTOR_SYNC_API_KEY=secure-random-string rake motor:sync Das Admin-Panel kann mit der „Basisauthentifizierung“ gesichert werden, indem die Umgebungsvariablen MOTOR_AUTH_USERNAME und MOTOR_AUTH_PASSWORD angegeben werden.
Alternativ kann es mit devise oder einer anderen von der Anwendung verwendeten Authentifizierungsbibliothek gesichert werden:
authenticate :admin_user do
mount Motor :: Admin => '/admin'
end Starten Sie den Webpack-Entwicklungsserver:
yarn install && yarn serveEntwicklungsdatenbank einrichten:
rake app:db:create && rake app:db:setupBeispielanwendung im Entwicklungsmodus starten:
MOTOR_DEVELOPMENT=true rails sMotor Admin ist unter der MIT-Lizenz lizenziert.