Администратор django и индикатор автозаполнения: Select2: экземпляр jQuery или jQuery-совместимая библиотека не найден

Легкий виджет автозаполнения не загружается полностью для поля, которое я пытаюсь закодировать в админке. Вместо этого я получаю следующее

Select2: экземпляр jQuery или jQuery-совместимая библиотека не найден. Убедитесь, что вы включаете jQuery до Select2 на своей веб-странице.

Рядом с полем выбора только с одним вариантом.

Это похоже на фактически несколько вопросов, которые были заданы ранее о библиотеке select2, и большинство решений включали переупорядочение файлов в файле settings.py или запуск python manage.py collectstatic. Но ни один из них не сработал до сих пор для меня.

Задача состоит в том, чтобы включить jQuery перед Select2 на моей веб-странице... как это можно сделать?

0 ответов

Я столкнулся с этой же проблемой, и я смог решить ее, перенастроив INSTALLED_APPS в моем settings.py файл, чтобы убедиться, что 'dal' а также 'dal_select2' оба включены перед django.contrib.admin.

Эта небольшая подсказка включена в документацию по установке дляdjango-autocomplete-light, хотя я пропустил это при первом чтении:

Затем, чтобы позволить Django найти нужные нам статические файлы, добавив их в INSTALLED_APPS перед django.contrib.admin и grappelli, если они есть:

'dal',
'dal_select2',
# 'grappelli',
'django.contrib.admin',

Это необходимо для переопределения сценария jquery.init.js, предоставленного администратором, который устанавливает> jQuery с помощью noConflict, делая jQuery доступным только в django.jQuery, а не в $.

PS В итоге я обнаружил, что django 2.x+ теперь имеет встроенную функцию автозаполнения полей. В итоге я использовал это вместо этого и настоятельно рекомендую его для снижения накладных расходов / затрат на разработку.

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