Django-admin-interface est une interface d'administration plate réactive moderne personnalisable par l'administrateur lui-même .

NEW inlines pliablesNEW champs de champs et enlines à ongletsNEW Liens de suppression de filtre de listeNEW filtre de liste Souligner les options sélectionnéesdjango-ckeditordjango-dynamic-raw-iddjango-json-widgetdjango-modeltranslationdjango-rangefilterdjango-streamfielddjango-tabbed-adminsorl-thumbnailde , es , fa , fr , it , pl , pt_BR , ru , tr pip install django-admin-interfaceadmin_interface et colorfield à settings.INSTALLED_APPS avant django.contrib.admin INSTALLED_APPS = (
#...
"admin_interface" ,
"colorfield" ,
#...
"django.contrib.admin" ,
#...
)
X_FRAME_OPTIONS = "SAMEORIGIN"
SILENCED_SYSTEM_CHECKS = [ "security.W019" ]python manage.py migratepython manage.py collectstatic --clearAvertissement
Si vous souhaitez utiliser des modaux au lieu de fenêtres contextuelles, assurez-vous d'ajouter le paramètre X_FRAME_OPTIONS = "SAMEORIGIN" .
Pour faire en sorte qu'un champ de champ commence à étendre avec un bouton Hide pour s'effondrer, ajoutez la classe "expanded" à ses classes:
class MyModelAdmin ( admin . ModelAdmin ):
# ...
fieldsets = [
( "Section title" , {
"classes" : ( "collapse" , "expanded" ),
"fields" : (...),
}),
]
# ... Ce package est livré avec des thèmes en option sous forme de luminaires, ils peuvent être installés à l'aide de la commande admin LoadData. Les thèmes facultatifs sont activés lors de l'installation.
Exécutez python manage.py loaddata admin_interface_theme_django.json
Exécutez python manage.py loaddata admin_interface_theme_bootstrap.json
Exécutez python manage.py loaddata admin_interface_theme_foundation.json
Exécutez python manage.py loaddata admin_interface_theme_uswds.json
Vous pouvez ajouter un thème que vous avez créé via l'administrateur à ce référentiel en nous envoyant un PR. Voici les étapes à suivre pour ajouter:
Exportez votre thème exact en tant que fixation à l'aide de la commande dumpdata admin: python manage.py dumpdata admin_interface.Theme --indent 4 -o admin_interface_theme_{{name}}.json --pks=N
Copiez le fichier JSON généré dans le dossier Fixtures (en vous assurant que son nom commence par admin_interface_theme_ pour éviter les affrontements avec des luminaires qui pourraient être fournis par d'autres applications tierces) .
Retirez le pk du luminaire et assurez-vous que le champ active est défini sur true (de cette façon, un thème est automatiquement activé lors de l'installation) .
Modifiez la section ci-dessus pour documenter votre thème.
Vous pouvez ajouter une prise en charge du thème aux bibliothèques tierces existantes en utilisant les variables CSS suivantes:
--admin-interface-header-background-color--admin-interface-header-text-color--admin-interface-header-link-color--admin-interface-header-link_hover-color--admin-interface-title-color--admin-interface-env-color--admin-interface-logo-color--admin-interface-logo-default-background-image--admin-interface-logo-max-width--admin-interface-logo-max-height--admin-interface-module-background-color--admin-interface-module-background-selected-color--admin-interface-module-border-radius--admin-interface-module-text-color--admin-interface-module-link-color--admin-interface-module-link-selected-color--admin-interface-module-link-hover-color--admin-interface-generic-link-color--admin-interface-generic-link-hover-color--admin-interface-generic-link-active-color--admin-interface-save-button-background-color--admin-interface-save-button-background-hover-color--admin-interface-save-button-text-color--admin-interface-delete-button-background-color--admin-interface-delete-button-background-hover-color--admin-interface-delete-button-text-color--admin-interface-related-modal-background-color--admin-interface-related-modal-background-opacity--admin-interface-related-modal-border-radius--admin-interface-related-modal-close-button-display Pour le moment, ce package a été traduit dans les langues suivantes: de , es , fa , fr , it , pl , pt_BR , tr .
Exécuter python -m django makemessages --ignore ".tox" --ignore "venv" --add-location "file" --extension "html,py" --locale "it" (Exemple pour la localisation italienne)
Mettre à jour les traductions dans admin_interface/locale/it/LC_MESSAGES/django.po
Exécutez python -m django compilemessages --ignore ".tox" --ignore "venv"
Si vous apportez des modifications au projet, n'oubliez pas de mettre à jour les traductions, car si les fichiers de traduction ne sont pas à jour, l'étape lint dans l'IC échouera:
tox -e translations Ce package utilise la mise en cache pour améliorer le temps de chargement du thème et les performances globales. Vous pouvez personnaliser les options de mise en cache de l'application "default" l'aide settings.CACHES["admin_interface"] .
CACHES = {
# ...
"admin_interface" : {
"BACKEND" : "django.core.cache.backends.locmem.LocMemCache" ,
"TIMEOUT" : 60 * 5 ,
},
# ...
}Avertissement
Il y a un problème de compatibilité connu lors de l'utilisation de ce package avec django-redis , plus précisément, en utilisant le JSONSerializer l'erreur suivante est soulevée: TypeError: Object of type Theme is not JSON serializable , pour atténuer ce problème, utilisez simplement un cache spécifique pour cette application qui n'utilise aucun sérialiseur json .
base-site.htmlJ'ai déjà une
base_site.htmlpersonnalisée_site.html, comment puis-je le faire fonctionner?
Vous pouvez utiliser django applemplates, puis ajouter {% extends "admin_interface:admin/base_site.html" %} à votre base_site.html
LocaleMiddleware MODEJ'utilise une sous-classe
django.middleware.locale.LocaleMiddleware, mais je vois un avertissement inutile pourdjango.middleware.locale.LocaleMiddleware, que puis-je faire?
Vous pouvez simplement ignorer l'avertissement (cela a été discuté ici)
import warnings
warnings . filterwarnings ( "ignore" , module = "admin_interface.templatetags.admin_interface_tags" )J'ai activé le sélecteur linguistique , mais il n'est pas visible dans l'administrateur, que dois-je faire?
Vous devez configurer correctement settings et urls multiples:
LANGUAGES = (
( "en" , _ ( "English" )),
( "it" , _ ( "Italiano" )),
( "fr" , _ ( "Français" )),
# more than one language is expected here
)
LANGUAGE_CODE = "en"
USE_I18N = True
MIDDLEWARE = [
# ...
"django.middleware.locale.LocaleMiddleware" ,
# ...
] from django . conf . urls . i18n import i18n_patterns
from django . contrib import admin
from django . urls import include , path
# ...
urlpatterns = [
path ( "i18n/" , include ( "django.conf.urls.i18n" )),
]
urlpatterns += i18n_patterns ( path ( "admin/" , admin . site . urls ))J'ai une application avec des liens croisés dans l'administrateur et je voudrais les ouvrir dans des fenêtres modales au lieu de la même fenêtre / nouvelle fenêtre, comment puis-je faire?
Il vous suffit d'ajouter _popup=1 paramètre de corde de requête aux URL:
url = reverse ( f"admin:myapp_mymodel_change" , args = [ mymodel_instance . pk ])
url = f" { url } ?_popup=1" # clone repository
git clone https://github.com/fabiocaccamo/django-admin-interface.git && cd django-admin-interface
# create virtualenv and activate it
python -m venv venv && . venv/bin/activate
# upgrade pip
python -m pip install --upgrade pip
# install requirements
pip install -r requirements.txt -r requirements-test.txt
# install pre-commit to run formatters and linters
pre-commit install --install-hooks
# run tests
tox
# or
python runtests.py
# or
python -m django test --settings " tests.settings " Les contributions sont toujours les bienvenues, veuillez suivre ces étapes pour soumettre des RP de bonne qualité:
CI . Libéré sous la licence du MIT.
django-cache-cleaner - Effacer facilement l'intégralité du cache ou des caches individuels à l'aide du panneau d'administration ou de la commande de gestion. ?
django-colorfield - Champ de couleur simple pour les modèles avec un joli cilleur de couleur dans l'administrateur. ?
django-extra-settings - Config et gérer les paramètres supplémentaires typés en utilisant uniquement l'administrateur Django.
django-maintenance-mode - Affiche une page d'erreur 503 lorsque le mode de maintenance est activé. ?
django-redirects - redirige avec un contrôle complet. ↪️
django-treenode - Probablement le meilleur modèle / administrateur abstrait pour vos trucs basés sur des arbres. ?
python-benedict - sous-classe dict avec support de liste de clés / cheyphe, raccourcis d'E / S (base64, csv, json, cornichon, plist, requête-string, toml, xml, yaml) et de nombreux utilitaires.
python-codicefiscale - CODE / DECODE CODES FISCALES ITALIENS - CODIFICA / DECODIFICA DEL CODICE FISCALE. ?? ?
python-fontbro - Opérations de police amicale. ?
python-fsutil - Utilitaires de système de fichiers pour les développeurs paresseux. ? ️