Django Python自动填充指示灯选择不显示

问题描述

我在自定义模型添加自动完成光选择2时遇到问题。我安装了带有pip的软件包,并将其添加到settings.py:

INSTALLED_APPS = [

'dal','dal_select2','dal_legacy_static','django.contrib.admin','django.contrib.auth',

....

我的网址以获取查询集:

url(r'^property-autocomplete/$',PropertyAutocomplete.as_view(),name='property-autocomplete'),

我对其进行了测试,并正确获得了结果。

我的自动完成功能

class PropertyAutocomplete(autocomplete.Select2QuerySetView):

def get_queryset(self):

    qs = Property.objects.all()

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

    return qs

在表单上,​​我添加了:

class ReserveForm(BSModalModelForm):

   re_renter = forms.ModelChoiceField(queryset=User.objects.filter(u_user_type=0).order_by('-pk'))
   re_inquilinos = forms.ModelMultipleChoiceField(queryset=User.objects.filter(u_user_type=0).order_by('-pk'),required=False)
   re_enter_date = forms.DateField(required=True,widget=forms.TextInput(attrs={'type':'date'}))
   re_exit_date = forms.DateField(required=True,widget=forms.TextInput(attrs={'type':'date'}))
   re_property = forms.ModelChoiceField(queryset=Property.objects.all(),widget=autocomplete.ModelSelect2(url='property-autocomplete'))

re_property是我想选择的字段,是外键值。 在我的HTML表单中,我得到了:

{% load crispy_forms_tags %}
{% load static %}

<form method="POST" action="">
{% csrf_token %}

<div class="modal-header">
  <h5 class="modal-title">Modificar/Crear Reserva</h5>
   <button type="button" class="close" data-dismiss="modal" aria-label="Close">
   <span aria-hidden="true">&times;</span>
 </button>
</div>

<div class="modal-body">
 <div class="form-row">
    <div class="form-group col-md-12 mb-0">
      {{ form.re_property|as_crispy_field }}
    </div>
  </div>
</div>

<div class="modal-footer">
  <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
  <button type="button" class="submit-btn btn btn-primary">Create</button>
</div>


</form>

{{form.media}}

我尝试导入select2.js,jquery等,但是没有任何效果。实际结果就像正常选择一样:

enter image description here

我只有该寄存器可供选择。我不知道我是否需要导入某物,或者我是否缺少某物,如果有人知道为什么。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)