Keppler Admin es un CMS con un entorno de desarrollo que cuenta con una base de gemas ya integradas, de tal forma que acelerará el desarrollo de aplicaciones de vanguardia bajo la plataforma de Ruby on Rails.
- Base de datos por defecto PostreSQL
- Integración para autenticación de usuarios con Devise
- Integración para roles de usuarios con Rolify
- Integración para autorizaciones con Pundit
- Integración para el manejo de de paginación con Kaminari
- Integración para helpers de formularios con SimpleForm
- Integración para búsquedas full-text con Ransack
- Integración con framework fronte-end para el administrativo con AdminLTE
- Integración con framework javascript VueJS
- Integración sitemap dinamicos con Sitemap Generator
Una de las novedades de Keppler Admin v2.0 es el lanzamiento de una gema que nos permite el fácil y rápido manejo de las funcionalidades del CMS. Para instalarlo necesitamos ejecutar el siguiente comando desde la consola:
gem install keppler
Para verificar que está instalada la gema correctamente y ver una lista de los posibles comandos que podemos utilizar, ejecutamos:
keppler
Para crear un nuevo proyecto en Ruby on Rails con Keppler Admin, podemos ejecutar:
keppler new NuevoProyecto
Los siguientes comandos se ejecutarán automáticamente al ejecutar keppler new
:
Si detienes el proceso a la mitad o aún no tienes configurado un archivo secrets.yml
con la configuración de
la base de datos y otros inicializadores, puedes crear la base de datos ejecutando:
keppler db_conf
Antes de poder iniciar con un proyecto nuevo, primero debemos instalar todas las gemas
instanciadas en el Gemfile
, ubicado en la raíz del proyecto, con el comando:
keppler dep
cd NuevoProyecto
Keppler ofrece la posibilidad de realizar tareas de scaffolds totalmente configurados para adaptarse al administrativo dentro de un rocket ya existente. Para crear un nuevo módulo sólo debes llamar al siguiente comando desde la consola:
keppler add module RocketName ModuleName attribute:type attribute:type ...
Por ejemplo, crearemos un módulo de productos con diversos campos y tipos de datos:
keppler add module KepplerProducts Product title:string description:text quantity:integer price:float arrival_date:date arrival_time:time available:boolean user:references
Luego debemos migrar la tabla a la base de datos con:
keppler migrate
Si luego deseamos borrar, crear, migrar y llenar la base de datos desde cero, podemos realizarlo ejecutando el comando:
keppler reset
Por último, si todo ha sido ejecutado debida y correctamente, podemos iniciar el proyecto ejecutando en la consola:
keppler server
Se ofrece una integración por defecto entre SimpleForm y Bootstrap, usted tiene la posibilidad de cambiar su funcionalidad en config/initializers/simple_form_bootstrap.rb
Aqui algunos ejemplos para la creación de inputs:
# Inputs de tipo string o textarea
= f.input :name
# Inputs de tipo CKEditor
= f.input :description, as: :ckeditor, input_html: { ckeditor: { toolbar: 'mini'} }
# Inputs de tipo boolean
= f.input :public, as: :keppler_boolean
# Inputs de tipo file
= f.input :image, as: :keppler_file
# Inputs de tipo select
= f.input :role_ids, collection: Role.all, label: false, include_blank: "Seleccione un rol"
# Inputs de tipo radio buttons
= f.collection_radio_buttons :option, [['vegan', 'vegan'] ,['vegetarian', 'vegetarian']], :first, :last
# Inputs de tipo check_boxes
= f.collection_check_boxes :options, [['vegan', 'vegan'] ,['vegetarian', 'vegetarian']], :first, :last
# Inputs de tipo date
= f.input :date, input_html: { class: 'datepicker' }
Nota: Puede revisar la documentación de AdminLTE para agregar nuevas integraciones para sus formularios a través de los Wrappers de simpleform.
La plataforma permite la adaptación de módulos con facil instalación, algunos de los módulos desarrollados son:
- Keppler Google Analytics Dashboard - ya viene integrado
- Keppler Blog
- Keppler Catalogs
- Keppler Contact