2017-02-18 1 views
0

Jquery UI의 자동 완성 기능을 통합하려고하는데 행운이 없습니다. 나는 datepicker를 구현하는데 성공하여 동일한 접근법을 사용하기로 결정했다.Django forms.Form 위젯과 Jquery UI 자동 완성

form.py

{% extends 'website/header.html' %} 
{% block content %} 
    <p><b>Submit Job</b></p> 
    <form action="{% url 'job' %}" method="post">{% csrf_token %} 
     <script> 
      $(document).ready(function() { 
       $('.datepicker').datepicker(); 
      }); 
     </script> 
     <script> 
      $(function() { 
      var availableTags = [ 
       "ActionScript", 
       "AppleScript", 
       "Asp", 
       "BASIC", 
       "C", 
       "C++", 
       "Clojure", 
       "COBOL", 
       "ColdFusion", 
      ]; 
      $("#material_id").autocomplete({ 
       source: availableTags 
      }); 
      }); 
     </script> 
     <p>{{ message }}</p> 
     <b>Select Asset to transcode</b> 
     {{form.as_p}} 
     <p> 
      <input type="submit" name="submit" /> 
     </p> 
    </form> 
{% endblock %} 

목표는 기본 값으로 작업을 진행하는 것입니다

from django import forms 
from asset_db.models import Profiles 


class SubmitJob(forms.Form): 

    material_id = forms.CharField(max_length=8, widget=forms.TextInput(attrs={'class': 'autocomplete'})) 
    workflow = forms.ModelChoiceField(queryset=Profiles.objects.distinct('name'), to_field_name='name') 
    start_datepicker = forms.CharField(max_length=12, widget=forms.DateInput(attrs={'class': 'datepicker'})) 
    end_datepicker = forms.CharField(max_length=12, widget=forms.DateInput(attrs={'class': 'datepicker'})) 

submit.html, 그럼 내가 그들에게 모델의 데이터로 변경됩니다. 왜 그것이 작동하지 않는지 아는가?

답변

0

템플릿이 생성하는 소스 코드를 보면 알 수 있습니다.

$("#material_id").autocomplete({ 
    source: availableTags 
}); 

form.py에 변수 이름에 "ID_"를 추가 {{form.as_p}} 때문이다

$("#id_material_id").autocomplete({ 
    source: availableTags 
}); 

에 :

나는 변경했다.