Tôi có một trường chọn trong biểu mẫu và bây giờ tôi cần phải lặp qua các tùy chọn trong trường này.Làm cách nào để lặp qua các tùy chọn của một SelectField trong một mẫu?
{{ form.myselect }}
mang lại cho tôi điều này:
<select name="myselect" id="id_myselect">
<option value="" selected="selected">---------</option>
<option value="2">Item 1</option>
<option value="3">Item 2</option>
...
</select>
Bây giờ tôi cần thêm một số thuộc tính cho các tùy chọn và vì lý do đó những gì tôi cần là:
<select name="myselect" id="id_myselect">
{% for x in form.myselect %}
<option value="{{ x.id }}">{{ x.name }}</option>
{% endfor %}
</select>
nhưng có một lỗi:
Caught TypeError while rendering: 'BoundField' object is not iterable
Tôi đã thử form.myselect.all
, form.myselect.option_set
nhưng nó không có gì
Vì vậy, những gì bạn muốn là tất cả mà không có sự '
Không, tôi muốn thêm một số thuộc tính vào các tùy chọn và vì nó cần trong vòng lặp '{% for x in form.myselect%}' bằng cách nào đó. – Goran
Đề xuất của tôi sẽ thay đổi tiện ích và thực hiện trong mã: https://docs.djangoproject.com/en/dev/ref/forms/widgets/ –