2017-03-23 6 views
0

검색 필터 역할을하는 자동 완성 (django-autocomplete-light app 및 Select2 위젯 사용) 양식 필드가 있고 예상대로 작동합니다.Select2 위젯을 사용하여 django-autocomplete-light 초기 데이터

양식을 제출하고 검색 결과가 나열되면이 양식 필드의 초기 값을 이전에 제출 된 값으로 설정하고 싶습니다. 사용자가 모든 검색 필터를 처음부터 다시 설정하는 대신 검색 매개 변수 중 일부를 조정할 수 있습니다.

이 양식 필드는 ~ 10000 값 중 하나를 선택하는 데 사용되므로 필요시 값을로드해야합니다. 양식 필드가 어떤 값으로도 미리 채워지지 않았기 때문에 초기 값을 설정하는 것이 어떻게 가능할지 모릅니다.

models.py

class Location(models.Model): 
    place = models.CharField(max_length=50) 
    postal_code = models.CharField(max_length=5) 

views.py

class LocationAutocomplete(autocomplete.Select2QuerySetView): 
    def get_queryset(self): 
     qs = Location.objects.all() 
     if self.q: 
      qs = qs.filter(place__istartswith=self.q) | qs.filter(postal_code__istartswith=self.q) 
     return qs 

forms.py

class LocationForm(forms.ModelForm):   
    class Meta: 
     model = Location 
     fields = ('place',) 
     widgets = { 
      'place': autocomplete.Select2(url='location_autocomplete') 
     } 

어떤 제안이?

감사합니다. 당신의 views.py에서

답변