Django 템플릿의 선택 필드로 foreignKey 필드를 표시해야 사용 가능한 모든 레코드가 드롭 다운으로 표시됩니다. 필드를 선택할 때마다 데이터베이스에 쿼리하는 경우를 고려하여 위의 목표를 달성하는 데 가장 적합한 방법 인 ForeignKey 필드에서 선택 필드를 만듭니다.ForeignKey 필드를 장고 템플릿의 선택 필드로 표시하는 방법
0
A
답변
1
첫 번째보기를 사용하여 해당 외래 키 필드를 가져 와서 컨텍스트를 통해 전달해야합니다. 템플릿에.
내부 Views.py 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>
1
사용 ModelChoiceField
https://docs.djangoproject.com/en/1.10/ref/forms/fields/#django.forms.ModelChoiceField
class MyForm(forms.ModelForm):
myfield = forms.ModelChoiceField(queryset=...)
내부
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