Как я могу цепорить фильтры с Django Filter и Django Autocomplete LightPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как я могу цепорить фильтры с Django Filter и Django Autocomplete Light

Сообщение Anonymous »

Я пытаюсь объединить фильтры Django (DF) с автозаполнением Django (DAL). Я также хочу подключить фильтр на нескольких полях в моей модели.

Выберите определенную страну. < /li>
Фильтра все города в выбранной области. < /li>
< /ol>
Я реализовал DF и DAL отдельно и не имею проблем, что указывает на то, что мои взгляды работают в соответствии с задумами. Поэтому я не вижу никакой точки зрения, чтобы поделиться URL -адресами.
Это означает, что пересылка в дал работает.
Однако, когда я пробую DF вместе с DAL:
< /p>
Я вижу, что значения словаря не установлены. Что правильно, потому что в раскрывающейся форме я не вижу фильтрации. Я могу только завершить поиск поля страны. Поля региона и города не работают должным образом. < /P>
Просмотры: < /p>

Код: Выделить всё

class CountryAutoComplete(autocomplete.Select2QuerySetView):
def get_queryset(self):
qs = Country.objects.all()

if self.q:
qs = qs.filter(name__istartswith=self.q)

return qs

class RegionAutoComplete(autocomplete.Select2QuerySetView):
def get_queryset(self):
qs = Region.objects.all()
country = self.forwarded.get("country", None)

if country:
qs = qs.filter(country=country)

if self.q:
qs = qs.filter(name__istartwith=self.q)

return qs

class CityAutoComplete(autocomplete.Select2QuerySetView):
def get_queryset(self):
qs = City.objects.all()  # Base queryset for cities
region = self.forwarded.get("region", None)  # Get 'region' value from forwarded data

if region:
qs = qs.filter(region=region)  # Correctly filter cities by region

if self.q:  # Filter cities based on the search query (q)
qs = qs.filter(name__istartswith=self.q)

return qs
< /code>
django filter class: < /p>
class RoomFilter(FilterSet):

country = ModelChoiceFilter(lookup_expr="iexact",
queryset=Country.objects.all(),
widget=autocomplete.ModelSelect2(url="auth_app:country-autocomplete"),
label=_("Land"))
region = ModelChoiceFilter(lookup_expr="iexact",
queryset=Region.objects.all(),
widget=autocomplete.ModelSelect2(url="auth_app:region-autocomplete", forward=["country"]),
label=_("Län"))
city = ModelChoiceFilter(lookup_expr="iexact",
queryset=City.objects.all(),
widget=autocomplete.ModelSelect2(url="auth_app:city-autocomplete", forward=["region"]),
label=_("Stad"))

class Meta():
model = Room
fields = ["country", "region", "city"]

< /code>
Модель, которую я пытаюсь отфильтровать: < /p>
class Room(models.Model):
member = models.ForeignKey(Member, on_delete=models.CASCADE, null=True, related_name="rooms")
room_category = models.CharField(_("Kategori"), blank=False, choices=RoomCategory.choices(), max_length=100, default=RoomCategory.choices()[0][0])
title = models.CharField(_("Rubrik"), max_length=settings.ROOM_TITLE_LENGTH, blank=False, validators=[text_validator])
country = models.ForeignKey(Country, blank=False, max_length=128, on_delete=models.PROTECT)
region = models.ForeignKey(Region, blank=False, max_length=128, on_delete=models.PROTECT)
city = models.ForeignKey(City, blank=False, max_length=128, on_delete=models.PROTECT)
description = models.TextField(_("Beskrivning"), blank=False, max_length=settings.ROOM_DESCRIPTION_LENGTH)
html, созданный df:
< /p>
Поля Страна, регион и город имеют отношение к иностранным ключам к модельной стране, региону и городу, которые являются моделями из света городов Джанго. < /p> < Br /> Кто -нибудь удалось выполнить то, что я описал или знал какой -либо другой метод для автоматического заполнения поля формы перед применением фильтра? < /p>

Подробнее здесь: https://stackoverflow.com/questions/794 ... lete-light
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Django-autocomplete-light показывает пустой раскрывающийся список вместо виджета автозаполнения
    Anonymous » » в форуме Python
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Struts2 и вызывают ошибку
    Anonymous » » в форуме JAVA
    0 Ответы
    36 Просмотры
    Последнее сообщение Anonymous
  • Razor jQuery Select Filter Filter
    Anonymous » » в форуме Html
    0 Ответы
    9 Просмотры
    Последнее сообщение Anonymous
  • Razor jQuery Select Filter Filter
    Anonymous » » в форуме Jquery
    0 Ответы
    6 Просмотры
    Последнее сообщение Anonymous
  • Razor jQuery Select Filter Filter
    Anonymous » » в форуме Javascript
    0 Ответы
    6 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»