Использование django_select2 в проекте Django
Доброго времени суток всем читающим.
Решил подключить к своему проекту django_select2, но дело оказалось не таким простым, как описано в документации.
Есть настройки кэша в БД
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.db.DatabaseCache',
'LOCATION': 'default_cache_table',
},
'select2': {
'BACKEND': 'django.core.cache.backends.db.DatabaseCache',
'LOCATION': 'select2_cache_table',
}
}
SELECT2_CACHE_BACKEND = "select2"
Есть модель в БД
class YchIzd(models.Model):
athor_username = models.ManyToManyField(User)
publ_name = models.TextField(unique=True, verbose_name = 'Наименование издания')
Форма под нее
from django_select2 import forms as s2forms
from django.contrib.auth.models import User
from .models import YchIzd
class MyWidget(s2forms.ModelSelect2MultipleWidget):
search_fields = [
'username__icontains',
]
class testForm(forms.ModelForm):
class Meta:
model = YchIzd
fields = ('athor_username', )
widgets = {
'athor_username': MyWidget,
}
И простое представление для теста
def test(request):
form = testForm()
return render(request, 'main/test.html', {'form' : form})
И, собственно, сам test.html
<!DOCTYPE html>
<html lang="en">
<head>
<title>Create Book</title>
{{ form.media.css }}
<style>
input, select {width: 100%}
</style>
</head>
<body>
<h1>Create a new Book</h1>
<form method="POST">
{% csrf_token %}
{{ form.as_p }}
<input type="submit">
</form>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
{{ form.media.js }}
</body>
</html>
Но это связка отказывается работать. Может кто-то увидит, почему эта маленькая и простая фича отказывается взлетать?=\
Для доп. информации - проект крутится на связке Debian + Nginx + Gunicorn и использует в качестве БД PostgreSQL. Вдруг тут собака зарыта.