FAQ: Админ

Я не могу войти в систему. Когда я ввожу действительное имя пользователя и пароль, он просто снова открывает страницу входа без сообщений об ошибках.

Файл cookie для входа установлен неправильно, потому что домен файла cookie, отправленного Django, не соответствует домену в вашем браузере. Попробуйте установить SESSION_COOKIE_DOMAINнастройку в соответствии с вашим доменом. Например, если вы собираетесь перейти на « https://www.example.com/admin/ » в своем браузере, установите .SESSION_COOKIE_DOMAIN = 'www.example.com'

Я не могу войти в систему. Когда я ввожу действительное имя пользователя и пароль, снова открывается страница входа с ошибкой «Пожалуйста, введите правильное имя пользователя и пароль».

Если вы уверены , что ваше имя пользователя и пароль правильны, убедитесь , что учетная запись пользователя is_activeи is_staffустановить в значение True. Сайт администратора разрешает доступ только тем пользователям, у которых для этих двух полей установлено значение True.

Как мне автоматически установить значение поля для пользователя, который последним редактировал объект в админке?

ModelAdminКласс обеспечивает настройки крючки , которые позволяют преобразовать объект , как он сохранен, используя контактную информацию из запроса. Выделив текущего пользователя из запроса и настроив save_model()ловушку, вы можете обновить объект, чтобы отразить пользователя, который его редактировал. См. Пример в документации по методам ModelAdmin .

Как ограничить доступ администратора, чтобы объекты могли редактировать только те пользователи, которые их создали?

ModelAdminКласс также обеспечивает настройки крючки , которые позволяют управлять видимостью и редактируемостью объектов в админке. Используя тот же трюк извлечения пользователя из запроса, get_queryset()и has_change_permission()может быть использовано для управления видимостью и редактируемостью объектов в админке.

CSS и изображения моего админ-сайта отлично отображались при использовании сервера разработки, но они не отображаются при использовании mod_wsgi.

См. Обслуживание файлов администратора в документации «Как использовать Django с mod_wsgi».

Мой «list_filter» содержит ManyToManyField, но фильтр не отображается.

Django не будет отображать фильтр для a, ManyToManyFieldесли связанных объектов меньше двух.

Например, если вы list_filter включаете сайты , а в вашей базе данных только один сайт, фильтр «Сайт» отображаться не будет. В этом случае фильтрация по сайту будет бессмысленной.

Некоторые объекты не отображаются в админке.

Несогласованное количество строк может быть вызвано отсутствием значений внешнего ключа или неправильным значением поля внешнего ключа null=False. Если у вас есть запись с ForeignKeyуказанием на несуществующий объект и этот внешний ключ включен list_display, запись не будет отображаться в списке изменений администратора, поскольку модель Django объявляет ограничение целостности, которое не реализовано на уровне базы данных.

Как я могу настроить функциональность интерфейса администратора?

У вас есть несколько вариантов. Если вы хотите использовать форму добавления / изменения, автоматически генерируемую Django, вы можете прикрепить к странице произвольные модули JavaScript с помощью параметра js Admin класса модели . Этот параметр представляет собой список URL-адресов в виде строк, указывающих на модули JavaScript, которые будут включены в форму администратора через <script>тег.

Если вам нужна большая гибкость, чем это возможно, путем настройки автоматически сгенерированных форм, не стесняйтесь писать собственные представления для администратора. Администратор работает на самом Django, и вы можете писать собственные представления, которые подключаются к системе аутентификации, проверяют разрешения и делают все, что им нужно.

Если вы хотите настроить внешний вид интерфейса администратора, прочтите следующий вопрос.

Админка, создаваемая динамически, ужасна! Как я могу это изменить?

Нам это нравится, но если вы не согласны, вы можете изменить представление сайта администратора, отредактировав таблицу стилей CSS и / или связанные файлы изображений. Сайт построен с использованием семантического HTML и множества хуков CSS, поэтому любые изменения, которые вы хотите внести, должны быть возможны путем редактирования таблицы стилей.

Какие браузеры поддерживают использование админки?

Администратор обеспечивает полнофункциональную работу с последними версиями современных браузеров, соответствующих веб-стандартам. На рабочем столе это означает Chrome, Edge, Firefox, Opera, Safari и другие.

На мобильных устройствах и планшетах администратор обеспечивает адаптивность браузеров, соответствующих веб-стандартам. Сюда входят основные браузеры как на Android, так и на iOS.

В зависимости от поддерживаемой функции браузеры могут иметь незначительные стилистические различия. Это считается допустимыми вариантами рендеринга.

Copyright ©2021 All rights reserved