flask adminlte
1.0.0
Modèle Bootstrap AdminLTE adapté au framework flask à l'aide de flask-admin 1.5.2 et flask-security 3.0.0.
Il aide à développer un panneau d'administration joli et facile à utiliser pour le backend écrit en Flask.
http://adminlte.najdaapps.com/admin/
connexion: [email protected]
mot de passe : administrateur
Copiez les répertoires adminlte
, static
, templates
dans votre projet.
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
-> Objet d'application Flaskname
-> Par exemple. FlaskCMS
. Nom de l'application. Sera affiché comme titre de page. La valeur par défaut est "Admin"short_name
-> Par exemple. <b>F</b>C
. Nom court de l'application. Sera affiché dans la barre de menu réduite. Par défaut, utilisera la valeur de la propriété name.long_name
-> Par exemple. <b>Flask</b>CMS
. Nom long de l'application. Sera affiché dans la barre de menu développée et au-dessus de chaque formulaire de sécurité. Par défaut, utilisera la valeur de la propriété name.skin
-> Couleur de peau AdminLTE ( blue
, black
, puprle
, green
, red
, yellow
, blue-light
black-light
purple-light
, green-light
, lumière verte, red-light
, yellow-light
). Par défaut, nous utiliserons blue
.url
-> URL de basesubdomain
-> Sous-domaine à utiliserindex_view
-> Vue de la page d'accueil à utiliser. La valeur par défaut est AdminIndexView
.translations_path
-> Emplacement des catalogues de messages de traduction. Par défaut, nous utiliserons les traductions livrées avec Flask-Admin.endpoint
-> Nom du point de terminaison de base pour la vue d'index. Si vous utilisez plusieurs instances de la classe Admin
avec une seule application Flask, vous devez définir un nom de point de terminaison unique pour chaque instance.static_url_path
-> Chemin d'URL statique. S'il est fourni, cela spécifie le chemin par défaut vers le répertoire URL statique pour toutes ses vues. Peut être remplacé dans la configuration de la vue.base_template
-> Remplacer le modèle HTML de base pour toutes les vues statiques. La valeur par défaut est 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