У меня есть что-то вроде этого:Используйте значение для ChoiceField в шаблоне
forms.py:
AVATAR_CHOICES = (('1','option1'), ('2','option2'), ('3','option3'),
('4','option4'))
class RegistrationForm(forms.Form):
avatar = ChoiceField(widget=RadioSelect, choices=AVATAR_CHOICES)
Я проходящее form
с моей точки зрения:
views.py
form = RegistrationForm()
return render_to_response('registration/register.html', {'form': form},
context_instance=RequestContext(request))
в шаблон:
registration.html:
{% for radio in form.avatar %}
<label class="radio">{{ radio.tag }}</label>
{% endfor %}
, но я хотел бы, чтобы включить изображения перед этим полей параметров, как способ, чтобы позволить пользователям выбрать аватар. Однако я не знаю, как получить доступ к ключам или значениям из кортежа AVATAR_CHOICES
. Основная идея заключается в том, чтобы иметь возможность сделать что-то вроде этого:
{% for radio in form.avatar %}
<label class="radio">{{ radio.tag }}</label>
<img src="{{ STATIC_URL }}img/avatars/{{ radio.tag.value }}.jpg"/>
{% endfor %}
Как это сделать?
Заранее спасибо.
@ IgnacioVazquez-Abrams Этот вопрос предназначен для поля модели с вариантами выбора, в то время как этот для полей формы. AFAIK нет соответствующих 'get_XXX_display' для полей формы, а если есть, то это (а) другая вещь и (б) не сразу видно, как здесь обрабатывать. – Dougal
Hah. И здесь я всегда обвиняю других в том, что я не читал вопрос (не потому, что я всегда ошибаюсь, об этом, заметьте ...). –