Основные риски — XSS в HTML, неверные URL, утечка доступа и N+1 запросы на связанных объектах. Ссылку нужно строить безопасно и отдельно проверять права на целевую страницу.
Какие подводные камни могут быть у добавления ссылок в Django Admin changelist?
Основные риски — XSS в HTML, неверные URL, утечка доступа и N+1 запросы на связанных объектах. Ссылку нужно строить безопасно и отдельно проверять права на целевую страницу.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Основные риски — XSS в HTML, неверные URL, утечка доступа и N+1 запросы на связанных объектах. Ссылку нужно строить безопасно и отдельно проверять права на целевую страницу.
Используйте reverse для внутренних маршрутов и format_html с аргументами вместо mark_safe от конкатенации пользовательского текста. Проверьте list_display_links, конфликты с редактируемыми колонками и сортировку. Для связанных данных настройте select_related или prefetch_related, а внешний URL ограничьте разрешёнными схемами. Скрытая ссылка не заменяет серверную авторизацию; пользователь может открыть адрес вручную.
Источник: docs.djangoproject.com.