2017-09-18 4 views
0

나는 내가 원하는 것에 완벽하게 작동하는 modelform_factory를 가지고있다.modelform_factory에 필요하지 않고 모델 속성을 가져 옵니까?

나는 다음과 같이 호출 :

당신이 추측 할 수 있듯이
dep_formset = modelformset_factory(
     Dependent, 
     fields=('has_medical', 'med_group_id'), 
     max_num = dep_count 
    ) 

, 부양 가족은 내가의 FIRST_NAME과 LAST_NAME을 보여주고 싶은 (각각 first_namelast_name) 표시 목적으로 간단하게 사용 할 추가 필드가 부양하는 사람 - 그러나 그것을 단순히 표시하고 편집하는 것이 아닙니다.

위의 필드에 'first_name'및 'last_name'을 추가하면 템플리트에서 액세스 할 수 있습니다. 그러나이 양식은 .is_valid()에 대해 실패합니다. 단순히 텍스트로 표시하고 입력으로 표시하지 않기 때문입니다. , 그래서 그들은 POST'ed되지 않습니다

종속 개체의 first_name 및 last_name에 액세스 할 수있는 영리한 방법은 formset_factory 필드에 추가하지 않고 있습니까? 그것은 formset처럼 보이는 제공 한 정보를 바탕으로

{% for form in dep_formset %} 
    {{ form.id }} 
    {% for hidden in form.hidden_fields %} 
     {{ hidden }} 
    {% endfor %} 
    <div class="g"> 
     <h4>{{ form.first_name.value }} {{form.last_name.value}}</h4> 
    </div> 
    <div class="g dependent-option"> 
     <div class="g-1-4 dependent-option-check"> 
      {% if form.has_medical %} 
+1

그래서 formset은 이미 생성 된 '종속'인스턴스에 연결되어 있습니까? 그렇다면 템플리트'{{form.instance.first_name}} '에있는 연관된 인스턴스에 액세스 할 수 있습니다. –

+1

그것은 치료를했습니다! 나는 그것을 표시 할 수 있도록 답변으로 게시하십시오! :) – Hanny

+0

도움이 되니 기꺼이 도와 주셨습니다. 감사! –

답변

1

가 연결되어 있습니다 : (당신은 내가 FIRST_NAME, LAST_NAME와 함께 할 노력하고있어 볼 수 있도록 부분 조각)

템플릿은 다음과 같습니다 템플릿에서 액세스 할 수있는 인스턴스 :

{{ form.instance.first_name }} 
관련 문제