【问题标题】:Error -Undefined variable: 'ModelSelect2Widget'错误 - 未定义变量:'ModelSelect2Widget'
【发布时间】:2021-04-10 05:34:42
【问题描述】:

我是这个领域的新手。我正在研究从here 引用的依赖下拉列表。使用以下代码复制相同的内容:

Forms.py

class AddressForm(forms.ModelForm):
   class Meta:
       model=City
       country = forms.ModelChoiceField(
          queryset=Country.objects.all(),
          label=u"Country",
          widget= ModelSelect2Widget(
            search_fields=['name__icontains'],
            dependent_fields={'city': 'cities'},
           )
       )

   city = forms.ModelChoiceField(
       queryset=City.objects.all(),
       label=u"City",
       widget=ModelSelect2Widget(
           search_fields=['name__icontains'],
           dependent_fields={'country': 'country'},
           max_results=500,
       )
   )

遇到错误

未定义变量:'ModelSelect2Widget'

我也安装了:

INSTALLED_APPS=[
                'django_select2',
                'django_q',
  ]

【问题讨论】:

  • 你导入ModelSelect2Widget了吗?
  • 嘿@WBM 我试过- from django_select2 import ModelSelect2Widget 但是在运行服务器时它给出的错误不能导入名称'ModelSelect2Widget' 我希望我的方法是正确的

标签: python django django-widget django-select2


【解决方案1】:

问题在于您的导入。在 Select2 中,ModelSelect2Widget 类位于表单模块中。 所以你的导入应该如下:

from django_select2.forms import ModelSelect2Widget


class AddressForm(forms.ModelForm):
   class Meta:
       model=City
       country = forms.ModelChoiceField(
          queryset=Country.objects.all(),
          label=u"Country",
          widget= ModelSelect2Widget(
            search_fields=['name__icontains'],
            dependent_fields={'city': 'cities'},
           )
       )

   city = forms.ModelChoiceField(
       queryset=City.objects.all(),
       label=u"City",
       widget=ModelSelect2Widget(
           search_fields=['name__icontains'],
           dependent_fields={'country': 'country'},
           max_results=500,
       )
   )

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-01-25
    • 2018-05-03
    • 2014-04-25
    • 2011-12-21
    • 2023-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多