Django-Admin-Interface-это современный отзывчивый плоский интерфейс администратора, настраиваемый самим администратором .

NEW складные вереткиNEW вкладки и вставкиNEW ссылки на удаление фильтра спискаNEW список фильтра выделяет выбранные параметры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 в settings.INSTALLED_APPS перед 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 --clearПредупреждение
Если вы хотите использовать модалы вместо всплывающих окон, убедитесь, что добавить настройку X_FRAME_OPTIONS = "SAMEORIGIN" .
Чтобы запустить поля, запускаемое с помощью кнопки Hide для коллапса, добавьте класс "expanded" к его классам:
class MyModelAdmin ( admin . ModelAdmin ):
# ...
fieldsets = [
( "Section title" , {
"classes" : ( "collapse" , "expanded" ),
"fields" : (...),
}),
]
# ... Этот пакет поставляется с дополнительными темами в качестве светильников, их можно установить, используя команду администратора 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
Вы можете добавить тему, которую вы создали через администратора в этот репозиторий, отправив нам PR. Вот шаги, чтобы следовать, чтобы добавить:
Экспортируйте свою точную тему в качестве приспособления, используя команду администратора 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 .
Запустите python -m django makemessages --ignore ".tox" --ignore "venv" --add-location "file" --extension "html,py" --locale "it" (пример для локализации итальянской локализации)
Обновление переводов в admin_interface/locale/it/LC_MESSAGES/django.po
Запустить 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 . Выпущено по лицензии MIT.
django-cache-cleaner -легко очистите весь кэш или отдельные кэши, используя панель администратора или команду управления. ?
django-colorfield -простое цветовое поле для моделей с красивым цветом в администраторе. ?
django-extra-settings -конфигурация и управление напечатанными дополнительными настройками, используя только администратор Django.
django-maintenance-mode -показывает страницу ошибки 503, когда включен режим обслуживания. ?
django-redirects - перенаправления с полным контролем. ↪
django-treenode - вероятно, лучшая абстрактная модель / администратор для ваших деревьев. ?
python-benedict -DICT Subclass с поддержкой ключа/клавиш, сочетания ввода/вывода (Base64, CSV, JSON, Pickle, Plist, Query String, Toml, XML, YAML) и многие утилиты.
python-codicefiscale - Encode/Decode Итальянские фискальные коды - Codifica/Decodifica del Codice Fiscale. ?? ?
python-fontbro - дружелюбные операции шрифта. ?
python-fsutil -Утилиты файловой системы для ленивых разработчиков. ? ♂️