【问题标题】:How to display a ForeignKey field as a selection field in django template如何在 django 模板中将 ForeignKey 字段显示为选择字段
【发布时间】:2017-03-29 05:42:22
【问题描述】:

我需要在 Django 模板中显示一个 foreignKey 字段作为选择字段,它将所有可用记录显示为下拉列表。考虑到每次选择字段都要查询数据库的情况,从ForeignKey字段中选择字段是实现上述目标的最佳方法。

【问题讨论】:

    标签: python django django-1.9


    【解决方案1】:

    使用ModelChoiceFieldhttps://docs.djangoproject.com/en/1.10/ref/forms/fields/#django.forms.ModelChoiceField

    class MyForm(forms.ModelForm):
        myfield = forms.ModelChoiceField(queryset=...)
    

    【讨论】:

      【解决方案2】:

      您应该使用第一个视图来获取该外键字段并将其传递给上下文字典。到模板。

      Inside Views.py

      DEPENDENT_FILED = DB.OBJECT.ALL() // field which has all the drop-down values.
      FR_FIELD = DB.OBJECT.GET(DB_OBJ_HAVING_FR) // selected drop-down from template
      
      context['FR_FIELD'] = FR_FIELD
      

      example.html 内

      {% if FR_FIELD %}
          <select name="dropdown_field">
                {%for fr_key in DEPENDENT_FILED %}
                     <option value="{{fr_key.field_name}}" {% if fr_key.field_name = FR_FIELD|add:0 %}selected{% endif %}>{{fr_key.option_name}}</option>
               {% endfor %}
          </select>
      

      【讨论】:

        猜你喜欢
        • 2013-09-22
        • 1970-01-01
        • 2021-04-28
        • 2017-04-19
        • 2012-07-05
        • 2016-06-01
        • 1970-01-01
        • 2023-01-03
        • 2018-04-21
        相关资源
        最近更新 更多