2014-07-25 4 views
1

, 나를 참아주세요 헤더 .. 장고 formsets can_delete 내가 장고에 새로운 오전

장고 formsets를 사용하여 템플릿을 생성하고 내가 can_delete 컬럼 헤더를 제공 할 수없는 오전을 제외한 모든 잘 작동합니다.

<form id="expenditure_form" method="post" action="/moni/add_expenditure/"> 
     {% csrf_token %} 
     <table border=10> 
      <tr> 
       <th>Serial No.</th> 
       <th><label >Date:</label></th> 
       <th><label for="id_description">Description:</label></th> 
       <th><label for="id_amount">Amount</label></th> 
      </tr> 

      {{ formset.management_form }} 
      {% for form in formset %} 
       <tr> 
        <td>{{forloop.counter}}</td> 
        {% for field in form %} 
         <td> {{ field.class }} {{ field }} 
          {% if field.name == "exp_date" %} 
           <a href="javascript:void(0)" class="todaylink" id= {{forloop.parentloop.counter0}} >Today</a> 
          {% endif %} 
         </td> 

       {% endfor %} 
       </tr> 
       <br> 

      {% endfor %} 

     </table> 
     <input type="submit" name="submit" value="Create Expenditure" /> 
    </form> 

과 같은 템플릿이 보인다 : templete입니다 양식 코드는 다음과 같습니다

def add_expenditure(request): 
    context = RequestContext(request) 
    ExpFormSet = modelformset_factory(Expenditure,extra=1,max_num=10,fields=('exp_date', 'description','amount'),can_delete=True) 

    if request.method == 'POST': 
     formset = ExpFormSet(request.POST) 
     if formset.is_valid(): 
      formset.save(commit=True) 
      formset = ExpFormSet() 
     else: 
      print "errors in formset are ",formset.errors 
    else: 
     formset = ExpFormSet(queryset=Expenditure.objects.none()) 
    return render_to_response('moni/add_expenditure.html', {'formset':formset}, context) 

: 내가 원하는 것은이다

enter image description here

처럼

내 장고 views.py 보인다 체크 박스를 삭제할 헤더가 있습니다 .. jus t 금액 옆에. 헤더를 하나 추가하려고했지만 의도 한대로 작동하지 않는 것 같습니다. 누군가가 아래 .. 어떤 조언을 제공 할 수는 삭제 확인란 위의이 헤더를 생성하는 방법에 관한 또 하나의 헤더

<form id="expenditure_form" method="post" action="/moni/add_expenditure/"> 
     {% csrf_token %} 
     <table border=10> 
      <tr> 
       <th>Serial No.</th> 
       <th><label >Date:</label></th> 
       <th><label for="id_description">Description:</label></th> 
       <th><label for="id_amount">Amount</label></th> 
       <th><label for="id_delete">Delete</label></th> 
      </tr> 

      {{ formset.management_form }} 
      {% for form in formset %} 
       <tr> 
        <td>{{forloop.counter}}</td> 
        {% for field in form %} 
         <td> {{ field.class }} {{ field }} 
          {% if field.name == "exp_date" %} 
           <a href="javascript:void(0)" class="todaylink" id= {{forloop.parentloop.counter0}} >Today</a> 
          {% endif %} 
         </td> 

       {% endfor %} 
       </tr> 
       <br> 

      {% endfor %} 

     </table> 
     <input type="submit" name="submit" value="Create Expenditure" /> 
    </form> 

enter image description here

어떤 조언을 추가 한 후 모습입니다?

답변

1

문제는

{% for field in form %} 
    <td> {{ field.class }} {{ field }} 
     {% if field.name == "exp_date" %} 
     <a href="javascript:void(0)" class="todaylink" id= {{forloop.parentloop.counter0}} >Today</a> 
     {% endif %} 
    </td> 
{% endfor %} 

이 5 TD를 만드는 것입니다 그리고 당신은 헤더에 4 TD있다.

<tr> 
      <th>Serial No.</th> 
      <th><label >Date:</label></th> 
      <th><label for="id_description">Description:</label></th> 
      <th><label for="id_amount">Amount</label></th> 
      <th></th> 
      <th><label for="id_delete">Delete</label></th> 
</tr> 

은 또한 당신이 삭제 확인란하기 전에 요소를 제거 할 수 있습니다 보시기 바랍니다.

+1

효과가있었습니다. 감사 –