Panel de administración de código bajo y motor Rails de inteligencia empresarial (sin DSL, configurable desde la interfaz de usuario) .
? Aplicación de demostración | ? Descripción general de las funciones | Pro
Agregue esta línea al Gemfile de su aplicación:
gem 'motor-admin'
Y luego ejecuta:
$ bundle install
Crear y ejecutar la migración:
$ rails motor:install && rake db:migrate
Todo lo que hay en el panel de administración se puede configurar mediante la interfaz de usuario de configuración intuitiva, que se puede abrir mediante el icono en la esquina superior derecha.
Los datos que se muestran en la página del recurso se pueden personalizar completamente mediante consultas SQL y paneles adjuntos al recurso como una pestaña. Por lo general, las consultas utilizadas para mostrar datos de recursos deben contener la variable {{resource_name_id}}
.
Obtenga más información sobre las personalizaciones de recursos
Se pueden agregar acciones de recursos personalizadas mediante una llamada al método Active Record, un punto final de API o formularios personalizados. Además, es posible anular las acciones predeterminadas de creación/actualización/eliminación.
Cualquier método o atributo del modelo ActiveRecord se puede exponer en el panel de administración agregando una nueva columna con el nombre que coincida con el nombre del método del modelo de recurso:
class Customer < ApplicationRecord
has_many :orders
def lifetime_value
orders . sum ( & :total_price )
end
end
Los valores de los campos del formulario se pueden usar en la ruta API mediante la sintaxis de {field_name}
: /api/some-endpoint/{resource_id}/apply
.
Obtenga más información sobre el creador de formularios personalizados
Las consultas pueden incluir variables incrustadas mediante la sintaxis {{variable}}
(bigote). La sintaxis {{#variable}} ... {{/variable}}
permite decidir si las condiciones dentro del alcance deben incluirse en la consulta.
Los datos de la consulta SQL se pueden representar como: tabla, número, gráfico de líneas, gráfico de barras, gráfico circular, embudo, rebajas.
Las consultas SQL se pueden organizar en paneles para crear una representación conveniente de los datos.
Los datos de la consulta se pueden enviar por correo electrónico periódicamente utilizando la función de alertas. El intervalo del correo electrónico de alerta se puede especificar utilizando lenguaje natural, por ejemplo, every day at midnight
, every Monday at 8 PM
, every weekday at 6AM and 6PM
, every minute
.
La dirección del remitente se puede especificar utilizando la variable de entorno MOTOR_ALERTS_FROM_ADDRESS
.
La búsqueda inteligente se puede abrir mediante el botón de la esquina superior derecha o usando el atajo Cmd + K.
Motor Admin permite establecer permisos a nivel de fila y columna a través de cancan gem. Los permisos de la interfaz de usuario del administrador deben definirse en el archivo app/models/motor/ability.rb
en la clase Motor::Ability
. Consulte la guía de Motor Admin y la documentación de CanCan para aprender a definir permisos de usuario.
Motor Admin está configurado de forma predeterminada para realizar cargas al proveedor que configuró en su archivo storage.yml
para Active Storage. Si está utilizando cargas grandes dentro de Motor Admin, deberá habilitar las cargas directas configurando la siguiente variable ENV.
MOTOR_ACTIVE_STORAGE_DIRECT_UPLOADS_ENABLED=true
Nota: Por el momento, esto permitirá cargas directas a nivel mundial.
Motor Admin puede usar las claves Rails ActiveRecord i18n para representar traducciones de recursos:
es :
activerecord :
models :
customer :
one : Cliente
other : Clientes
attributes :
customer :
name : Nombre
scopes :
customer :
enabled : Activado
Todas las configuraciones del panel de administración se almacenan automáticamente en el archivo config/motor.yml
. Se recomienda incluir este archivo en el repositorio git de la aplicación para tener siempre sincronizadas las configuraciones del panel de administración en diferentes entornos locales y remotos.
Es posible sincronizar las configuraciones del panel de administración de desarrollo local con la aplicación de producción remota mediante la tarea rake motor:sync
:
MOTOR_SYNC_REMOTE_URL=https://remote-app-url/ MOTOR_SYNC_API_KEY=secure-random-string rake motor:sync
El panel de administración se puede proteger con 'Autenticación básica' especificando las variables de entorno MOTOR_AUTH_USERNAME
y MOTOR_AUTH_PASSWORD
.
Alternativamente, se puede proteger con un dispositivo o cualquier otra biblioteca de autenticación utilizada por la aplicación:
authenticate :admin_user do
mount Motor :: Admin => '/admin'
end
Inicie el servidor de desarrollo del paquete web:
yarn install && yarn serve
Configurar la base de datos de desarrollo:
rake app:db:create && rake app:db:setup
Inicie la aplicación de ejemplo en modo de desarrollo:
MOTOR_DEVELOPMENT=true rails s
Motor Admin tiene licencia MIT.