Django-Admin-Interface هي واجهة مشرف مسطحة حديثة استجابة قابلة للتخصيص من قبل المسؤول نفسه .

NEW قابلة للطيNEW والطبعاتNEWNEW الخيارات المحددةdjango-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 و colorfield django.contrib.admin settings.INSTALLED_APPS . INSTALLED_APPS = (
#...
"admin_interface" ,
"colorfield" ,
#...
"django.contrib.admin" ,
#...
)
X_FRAME_OPTIONS = "SAMEORIGIN"
SILENCED_SYSTEM_CHECKS = [ "security.W019" ]python manage.py migratepython manage.py collectstatic --clearتحذير
إذا كنت ترغب في استخدام Midals بدلاً من Windows المنبثقة ، فتأكد من إضافة إعداد X_FRAME_OPTIONS = "SAMEORIGIN" .
لجعل مجموعة الحقول توسع مع زر Hide للانهيار ، أضف الفئة "expanded" إلى فصولها:
class MyModelAdmin ( admin . ModelAdmin ):
# ...
fieldsets = [
( "Section title" , {
"classes" : ( "collapse" , "expanded" ),
"fields" : (...),
}),
]
# ... تشحن هذه الحزمة مع سمات اختيارية كإعدادات ، يمكن تثبيتها باستخدام أمر admin LoadData. يتم تنشيط السمات الاختيارية عند التثبيت.
تشغيل python manage.py loaddata admin_interface_theme_django.json
قم بتشغيل python manage.py loaddata admin_interface_theme_bootstrap.json
قم بتشغيل python manage.py loaddata admin_interface_theme_foundation.json
قم بتشغيل python manage.py loaddata admin_interface_theme_uswds.json
يمكنك إضافة سمة قمت بإنشائها من خلال المسؤول إلى هذا المستودع عن طريق إرسال العلاقات العامة لنا. فيما يلي خطوات متابعة لإضافة:
قم بتصدير المظهر الدقيق الخاص بك على أنه لاعبا اساسيا باستخدام أمر المسؤول dumpdata : python manage.py dumpdata admin_interface.Theme --indent 4 -o admin_interface_theme_{{name}}.json --pks=N
انسخ ملف JSON الذي تم إنشاؤه إلى مجلد المباريات (مع التأكد من أن اسمه يبدأ بـ admin_interface_theme_ لتجنب الاشتباكات مع التركيبات التي قد يتم توفيرها بواسطة تطبيقات الطرف الثالث الآخر) .
قم بإزالة pk من المباراة وتأكد من ضبط الحقل active على true (وبهذه الطريقة يتم تنشيط السمة تلقائيًا عند تثبيتها) .
قم بتحرير القسم أعلاه لتوثيق موضوعك.
يمكنك إضافة دعم السمة إلى مكتبات الطرف الثالث الحالي باستخدام متغيرات CSS التالية:
--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 في الوقت الحالي ، تمت ترجمة هذه الحزمة إلى اللغات التالية: de ، es ، fa ، fr ، it ، pl ، pt_BR ، tr .
Run python -m django makemessages --ignore ".tox" --ignore "venv" --add-location "file" --extension "html,py" --locale "it" (مثال على التوطين الإيطالي)
تحديث الترجمات في admin_interface/locale/it/LC_MESSAGES/django.po
Run python -m django compilemessages --ignore ".tox" --ignore "venv"
إذا قمت ببعض التغييرات على المشروع ، تذكر تحديث الترجمات ، لأنه إذا لم تكن ملفات الترجمات محدثة ، فسوف تفشل خطوة lint في CI:
tox -e translations تستخدم هذه الحزمة التخزين المؤقت لتحسين وقت تحميل السمة والأداء العام. يمكنك تخصيص إعداد خيارات تخزين المؤقت باستخدام settings.CACHES["admin_interface"] ، وإلا سيتم استخدام ذاكرة التخزين "default" :
CACHES = {
# ...
"admin_interface" : {
"BACKEND" : "django.core.cache.backends.locmem.LocMemCache" ,
"TIMEOUT" : 60 * 5 ,
},
# ...
}تحذير
هناك مشكلة توافق معروفة عند استخدام هذه الحزمة مع django-redis ، وبشكل أكثر تحديداً ، باستخدام JSONSerializer يتم رفع الخطأ التالي: TypeError: Object of type Theme is not JSON serializable ، للتخفيف من هذه المشكلة ، ببساطة استخدام تخزين مؤقت محدد لهذا التطبيق لا يستخدم أي مسلسل json .
base-site.htmlلدي بالفعل
base_site.htmlمخصصة ، كيف يمكنني جعلها تعمل؟
يمكنك استخدام django-apptemplates ، ثم إضافة {% extends "admin_interface:admin/base_site.html" %} إلى base_site.html
LocaleMiddleware تحذيرأنا أستخدم الفئة الفرعية
django.middleware.locale.LocaleMiddleware، لكني أرى تحذيرًا غير ضروري لفقدانdjango.middleware.locale.LocaleMiddleware، ماذا يمكنني أن أفعل؟
يمكنك ببساطة تجاهل التحذير (تمت مناقشته هنا)
import warnings
warnings . filterwarnings ( "ignore" , module = "admin_interface.templatetags.admin_interface_tags" )لقد مكنت اللغة المختارة ، لكنها غير مرئية في المشرف ، ماذا علي أن أفعل؟
يجب عليك تكوين settings متعددة اللغة وعناوين urls بشكل صحيح:
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 ))لديّ تطبيق يحتوي على بعض الروابط المتقاطعة في المشرف وأرغب في فتحها في نوافذ مشروطة بدلاً من النافذة نفسها/الجديدة ، كيف يمكنني القيام بها؟
تحتاج فقط إلى إضافة _popup=1 معلمة سلسلة الاستعلام إلى عناوين 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 " المساهمات دائمًا موضع ترحيب ، يرجى اتباع هذه الخطوات لتقديم PRS جيدة الجودة:
CI . صدر تحت رخصة معهد ماساتشوستس للتكنولوجيا.
django-cache-cleaner قم بمسح ذاكرة التخزين المؤقت بالكامل أو ذاكرة التخزين المؤقت الفردية بسهولة باستخدام لوحة المسؤول أو أمر الإدارة. ؟
django-colorfield حقل ألوان بسيط للموديلات مع مراكز ألوان لطيفة في المشرف. ؟
django-extra-settings تكوين وإدارة إعدادات إضافية مكتوبة باستخدام مسؤول Django فقط.
django-maintenance-mode يعرض صفحة خطأ 503 عند تشغيل وضع الصيانة. ؟
django-redirects - إعادة توجيه مع التحكم الكامل. ↪
django-treenode - ربما أفضل طراز / مسؤول تجريدي لأشياءك القائمة على الأشجار. ؟
python-benedict الفئة الفرعية DICT مع دعم Keylist/Keypath ، اختصارات I/O (BASE64 ، CSV ، JSON ، PEACLE ، PLIST ، BLIST ، QUERY-BRY ، TOML ، XML ، YAML) والعديد من الأدوات المساعدة.
python-codicefiscale - تشفير/فك شفرة الرموز المالية الإيطالية - Codifica/decodifica del codice fiscale. ؟ ؟
python-fontbro - عمليات الخطوط الودية. ؟
python-fsutil مرافق نظام الملفات للديفات الكسول. ؟