2016-11-03 2 views
0

django 1.10.2에서 django-autocomplete-light 3.2.1을 사용하고 있습니다. autocomplete 필드 대신 admin에서 select 필드가 나타납니다. 나는 here에서 지시를 따랐다.Django 자동 완성이 작동하지 않습니다.

urlpatterns = i18n_patterns(
url(r'^admin/', admin.site.urls), 
url(r'^autocomplete/', include('apps.vehicle.urls')),) 

내부 폴더를 애플 리케이션 urls.py 패키지 I은 차량의 응용 프로그램을 가지고있다. 안에는 다음과 같은 코드가 있습니다. 1) views.py :

from dal import autocomplete 
    from .models import Model 

    class ModelAutocomplete(autocomplete.Select2QuerySetView): 
     def get_queryset(self): 
    # Don't forget to filter out results depending on the visitor ! 
      if not self.request.user.is_authenticated(): 
       return Model.objects.none() 

    qs = Model.objects.all() 

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

    return qs 

2) forms.py :

from django import forms 

from dal import autocomplete 
from .models import Model, ChassisCode 

class ChassisCodeForm(forms.ModelForm): 
    test_field = forms.ModelChoiceField(
     queryset=Model.objects.all(), 
     widget=autocomplete.ModelSelect2(url='model-autocomplete') 
    ) 

class Meta: 
    model = ChassisCode 
    fields = ('__all__') 

3) admin.py :

class ChassisCodeAdmin(admin.ModelAdmin): 
    form = ChassisCodeForm 

admin.site.register(ChassisCode, ChassisCodeAdmin) 

4) 마지막 urls.py :

from django.conf.urls import url 

from .views import ModelAutocomplete 

urlpatterns = [ 
    url(
     r'^model-autocomplete/$', 
     ModelAutocomplete.as_view(), 
     name='model-autocomplete', 
    ), 
] 

하지만 자동 완성 기능이 작동하지 않습니다. 관리자의 경우 일반적인 관리자 선택 필드 만 표시됩니다. 내 코드에서 무엇이 잘못되었을 수 있습니까?

답변

1

먼저, Firefox 콘솔을 검사하여 몇 가지 오류가 발견되었습니다. 이는 몇 가지 코드 오류가 있거나 정적 파일이로드되지 않았 음을 의미합니다. 그 후 내 서버의 정적 폴더를 검사하여 자동 완성 폴더가없는 것을 발견했습니다. 그런 다음 문제를 해결하려면 다음 코드를 실행하십시오.

python manage.py collectstatic 
관련 문제