Форум сайта python.su
помогите пожалуйста решить проблему.
есть таблица с данными о пользователе. в таблице есть связанное поле ‘gender’. нужно вывести форму с выпадающим списком для выбора пола.
models.py:
class Gender(models.Model): gender = models.CharField( max_length=10, blank=False, ) class UserProfile(User): nickname = models.CharField( 'Отображаемое имя', max_length=30, blank=False, ) gender = models.ForeignKey( Gender, #default=1, null=True, )
def personal_data_page(request): entry_user_profile = UserProfile.objects.get(user_ptr_id__exact=request.user.id) form = PersonalDataForm(instance=entry_user_profile) t = loader.get_template('personal_data_page.html') c = RequestContext(request, { 'form': form, }) return HttpResponse(t.render(c))
class PersonalDataForm(forms.ModelForm): class Meta: model = UserProfile fields = ( 'nickname', 'gender', )
<div class="cell"> <label class="label">{{ form.gender.label }}</label> {{ form.gender }} {{ form.gender.errors }} </div>
1. а мне нужно чтобы выводилось что-то типа:
<select> <option value="1">Male</option> <option value="2">Female</option> </select>
{{ form.gender.gender }}
Офлайн
Точно не уверен, но попробуйте добавить для модели Gender метод __unicode__ который будет возвращать вам нужное описание.
def __unicode__(self): return self.gender
Отредактировано GreyZmeem (Май 16, 2014 12:39:10)
Офлайн