flask adminlte
1.0.0
Plantilla Bootstrap AdminLTE adaptada al framework flask usando flask-admin 1.5.2 y flask-security 3.0.0.
Ayuda a desarrollar un panel de administración bonito y fácil de usar para el backend escrito en flask.
http://adminlte.najdaapps.com/admin/
iniciar sesión: [email protected]
contraseña: administrador
Copie los directorios adminlte
, static
y templates
a su proyecto.
from flask import Flask , url_for
from flask_security import Security
from flask_admin import helpers as admin_helpers
from adminlte . admin import AdminLte , admins_store
app = Flask ( __name__ )
security = Security ( app , admins_store )
admin = AdminLte ( app , skin = 'green' , name = 'FlaskCMS' , short_name = "<b>F</b>C" , long_name = "<b>Flask</b>CMS" )
@ security . context_processor
def security_context_processor ():
return dict (
admin_base_template = admin . base_template ,
admin_view = admin . index_view ,
h = admin_helpers ,
get_url = url_for
)
class DeviceView ( BaseAdminView ):
column_editable_list = [ 'name' , 'type' , 'rooted' ]
column_searchable_list = [ 'name' , 'type' , 'rooted' ]
column_exclude_list = None
column_details_exclude_list = None
column_filters = [ 'name' , 'type' , 'rooted' ]
can_export = True
can_view_details = False
can_create = True
can_edit = True
can_delete = True
edit_modal = True
create_modal = True
details_modal = False
admin . add_view ( DeviceView ( Device , db . session , name = "Devices" , menu_icon_value = 'fa-laptop' ))
admin . add_link ( FaLink ( name = 'Website' , url = 'http://tomasznajda.com' , icon_value = 'fa-globe' , target = "_blank" ))
admin . add_view ( DeviceView ( Device , db . session , name = "Devices" , category = 'Author' , menu_icon_value = 'fa-laptop' ))
admin . add_link ( FaLink ( name = 'Website' , category = 'Author' , url = 'http://tomasznajda.com' , icon_value = 'fa-globe' , target = "_blank" ))
admin . set_category_icon ( name = 'Author' , icon_type = 'fa' , icon_value = 'fa-address-card' )
app
-> objeto de aplicación Flaskname
-> Por ej. FlaskCMS
. Nombre de la aplicación. Se mostrará como título de página. El valor predeterminado es "Administrador"short_name
-> Por ej. <b>F</b>C
Nombre corto de la aplicación. Se mostrará en la barra de menú contraída. De forma predeterminada se utilizará el valor de la propiedad del nombre.long_name
-> Por ej. <b>Flask</b>CMS
. Nombre largo de la aplicación. Se mostrará en la barra de menú ampliada y encima de cada formulario de seguridad. De forma predeterminada se utilizará el valor de la propiedad del nombre.skin
-> Color de piel AdminLTE ( blue
, black
, puprle
, green
, red
, yellow
, blue-light
black-light
purple-light
, green-light
verde, red-light
, yellow-light
). Por defecto usará blue
.url
-> URL basesubdomain
-> Subdominio a usarindex_view
-> Vista de la página de inicio a utilizar. El valor predeterminado es AdminIndexView
.translations_path
-> Ubicación de los catálogos de mensajes de traducción. De forma predeterminada se utilizarán las traducciones enviadas con Flask-Admin.endpoint
-> Nombre del punto final base para la vista de índice. Si utiliza varias instancias de la clase Admin
con una sola aplicación Flask, debe establecer un nombre de punto final único para cada instancia.static_url_path
-> Ruta de URL estática. Si se proporciona, especifica la ruta predeterminada al directorio URL estático para todas sus vistas. Se puede anular en la configuración de vista.base_template
-> Anular la plantilla HTML base para todas las vistas estáticas. El valor predeterminado es admin/base.html
. column_editable_list = [ 'from_user' , 'to_user' , 'subject' , 'content' , 'created_at' ]
column_searchable_list = [ 'from_user.first_name' , 'from_user.last_name' , 'from_user.email' , 'to_user.first_name' ,
'to_user.last_name' , 'to_user.email' , 'subject' , 'content' , 'created_at' ]
column_exclude_list = [ 'created_at' ]
column_details_exclude_list = [ 'created_at' ]
column_filters = [ 'subject' , 'content' , 'created_at' ]
can_export = True
can_view_details = True
can_create = True
can_edit = True
can_delete = True
edit_modal = True
create_modal = True
details_modal = True
SECURITY_REGISTERABLE = True
SECURITY_RECOVERABLE = True
SECURITY_CHANGEABLE = True