2016-12-15 64 views
0

我与复选框MANT一对多的关系形式的Django的形式: which looks like this如何在Django多对多关系表中动态显示选定的选项?

和下拉是这样的:The dropdown in form

对于下拉每一个元素,我有几个预选方案复选框。我想在预选的(预映射)元素中显示检查。

OR

不显示,并显示预选“提取类型”在复选框对应的“节”。

Django的:models.py(多对多关系)

(models.py) 

class SectionsExtractions(models.Model): 

    section_id = models.ForeignKey(Sections, on_delete=models.CASCADE) 
    extraction_id = models.ManyToManyField(Extractions) 

    def __str__(self): 
    return str(self.section_id) + ' - ' + ', '.join([a.extraction_type for a in self.extraction_id.all()]) 

Django的:forms.py

(forms.py) 

class SectionExtractionForm(ModelForm): 


    extraction_id = forms.ModelMultipleChoiceField(widget=forms.CheckboxSelectMultiple(attrs={'checked' : 'checked'}), queryset=Extractions.objects.all()) 
    class Meta: 
     model = SectionsExtractions 
     fields = '__all__' 

HTML模板的形式是: 对不起,坏的布局。

(HTML) 
    {% extends 'cfman/base.html' %} 

{% block title %}Section - Extraction{% endblock %} 

{% block head %} 
{% load staticfiles %} 
<link rel="stylesheet" href="{% static 'cfman/assets/css/style.css' %}" /> 
<script src="{% static 'cfman/assets/js/managerjs.min.js' %}"></script> 

{% endblock %} 

{% block body %} 
<div> 
    <h1>Map Section-Extraction</h1> 
</div> 
<br> 
<br> 

<div class="container-fluid"> 
    <div class="row"> 
     <div class="col-sm-12 col-md-7"> 
      <div class="panel panel-default"> 
       <div class="panel-body"> 

       <form class="form-horizontal" action="" method="post" enctype="multipart/form-data"> 
       {% csrf_token %} 
       {% for field in form %} 
<div class="form-group"> 
    <div class="col-sm-offset-2 col-sm-10"> 
     <span class="text-danger small">{{ field.errors }}</span> 
         </div> 
         <label class="control-label col-sm-2"> 
          {{ field.label_tag }} 
         </label> 
        <div class="col-sm-10"> 
        {{ field }} 
       </div> 

       </div> 
       {% endfor %} 

       <div class="form-group"> 
        <div class="col-sm-offset-2 col-sm-10"> 
         <button type="submit" class="btn btn-success">Save</button> 
        </div> 
     <a href="{% url 'cfman:add_extraction' %}"> 
       <i class="fa fa-sitemap fa-1g"></i>&nbsp; 
       Add Extraction Type 
      </a> 

        </div> 
       </form> 

       </div> 

      </div> 
     </div> 
    </div> 
</div> 
{% endblock %} 

回答

0

发送instance形式

form = SectionExtractionForm(
     instance=SectionsExtractions.objects.get(id='<extraction_id>') 
) 
+0

这个有意见要加入? –

+0

**错误**:int()与基数10的无效文字:'' –

+0

它应该是对象的实际ID。 –

相关问题