Как мне обновить django-ajax-select

Я давно установил django-ajax-select, который был версии 1.2.4. Это работало отлично. Кажется, в некоторых полях ManyToMany есть какая-то ошибка, которую я сейчас пытаюсь реализовать, поэтому я обновился до версии 1.3.3. Сейчас ничего не работает.

В соответствии с документацией, я думаю, что моя оригинальная конфигурация должна работать нормально (например, несколько пользовательских каналов поиска, конструктор make_ajax_field в некоторых формах лицевой стороны и т. Д.). Так что я не изменил свой код вообще.

Я думаю, что HTML выглядит корректно: я вижу атрибуты ajax_select, div on_deck и т. Д. Но на самом деле ввод данных не дает никаких результатов. В окне отладки Chrome я не вижу, чтобы какие-либо URL-вызовы выполнялись так, как в исходной версии. Если я сам перейду к URL, он выдаст результаты в формате JSON, поэтому я думаю, что бэкэнд работает нормально.

Обновление: я не уверен, что JavaScript загружается правильно. На моих страницах веб-интерфейса я не вижу js, перечисленных в разделе chrome developer tools - sources. На моих страницах администратора он, кажется, загружает js, но затем консоль js показывает "Не удается прочитать свойство" fn "из undefined" в ajax_select.js. Таким образом, поведение выпадающего тоже отсутствует.

Обновление 2: я удалил AJAX_SELECT_BOOTSTRAP = True из settings.py, и он отлично работает, но только в админке. Если установить значение false, оно все равно не будет работать; вся строка должна быть удалена. Однако ни одна из этих комбинаций не заставляет его работать на моем внешнем сайте, который использует тему начальной загрузки и уже загружает jquery, jqueryui в элемент head.

Какие-нибудь мысли? Я не могу даже вернуться к 1.2.4 через pip, так как он не находит эту версию.

1 ответ

Решение

Я нашел решение, но точно не знаю, зачем это нужно:

Я удалил AJAX_SELECT_BOOTSTRAP = True. Как я уже говорил выше, мне пришлось полностью удалить строку, а не просто установить ее в false. После этого любые административные формы работали корректно.

Затем я добавил это на свои страницы интерфейса:

Теперь, кажется, работает отлично.

Другие вопросы по тегам