我有一个带有多对多关系形式的Django表单和复选框: which looks like this
下拉是这样的: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>
Add Extraction Type
</a>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
{% endblock %}
答案 0 :(得分:0)
以表格
发送NestedListView mNestedListView = findViewById(R.id.list);
mNestedListView.setCallback(new FocusLock() {
@Override
public void lock() {
mScrollView.requestDisallowInterceptTouchEvent(true);
}
@Override
public void unlock() {
mScrollView.requestDisallowInterceptTouchEvent(false);
}
});
instance