Итак, я пытаюсь создать сайт с django, и у меня возникает проблема, когда при создании списка выбора появляются два сообщения.Django делает два <select> вместо одного, пытаясь использовать Bootstrap (загрузка формы)
Html:
<form action="/upload/" method="post" enctype="multipart/form-data">
{% csrf_token %}
<div class="form-group">
<select class="form-control">
{% for course in form.courseChoices %}
<option value="{{course}}">{{course}}</option>
{% endfor %}
</select>
<!--div class="col-lg-6 col-sm-6 col-12" id="upload_form" -->
<label class="btn btn-block btn-primary">
{{ form.document }} <input type="file" style="display: none; width: 100%;" >
</label>
</div> </form>
Это то, что выглядит как here
Моя форма только простой ModelForm с парой полей. forms.py class FileForm(forms.ModelForm): class Meta: model = FileUploads fields = ('semesterChoices', 'document', 'courseChoices',)
Вот что моя модель выглядит
class FileUploads(models.Model):
semestersList = ['Spring 2017',
'Fall 2016',
'Spring 2016',
'Fall 2015',
'Spring 2015',
'Fall 2014',
'Spring 2014',
'Fall 2013']
with open('polls/courses.txt', 'r') as f:
coursesList = [line.strip() for line in f]
semesters = [(option, option) for option in semestersList]
courses = [(course, course) for course in coursesList]
semesterChoices = models.CharField(max_length=20, choices=semesters, default="Spring 2017")
courseChoices = models.CharField(max_length=20, choices=courses, default="ACCT Accounting")
document = models.FileField(upload_to='documents/')
uploaded_at = models.DateTimeField(auto_now_add=True)
Я просто хочу бутстраповские выбрать, но мне кажется, что все, что значение передается в это действительно не имеет значения, он принимает второй оператор выбора в качестве входных данных.
Спасибо! Это сработало для меня! Я ноб в Django, и это помогло мне понять, что Django распаковывал поля формы и делал это так, как я хотел, мне пришлось бы вручную отображать поля. – NewbAndroider