Форма профиля пользователя Django пуста

Я знаю, что об этом уже много написано, но я перепробовал много решений и не могу отобразить свою форму!

Я хочу сделать что-то действительно простое (я новичок в Django), я создаю определенный пользовательский профиль, чтобы расширить базовый, и я хочу, чтобы пользователь редактировал его:

Вот моя модель:

class UserProfile(models.Model):
    user = models.OneToOneField(User)
    cc = models.CharField(max_length=400, blank=True)
    lang = models.CharField(max_length=5, blank=True, )
    def __unicode__(self):
        return unicode(self.user.email)

class UserProfileForm(forms.ModelForm):
    class meta:
        model = UserProfile
    def __init__(self,*args,**kwargs):
        super(UserProfileForm, self).__init__(*args, **kwargs)
        self.user = kwargs['instance']

def create_user_profile(sender, instance, created, **kwargs):
    if created:
        UserProfile.objects.create(user=instance)

post_save.connect(create_user_profile, sender=User)

Вот мой метод просмотра:

@login_required
def accountform(request):
    data = {}
    data.update(csrf(request))
    user_profile = request.user.get_profile()
    data['form'] = UserProfileForm(instance=user_profile)
    print user_profile
    return render(request, 'accountform.html', data)

Вот мой шаблон:

<form action="/contact/" method="post">
    {{ form.as_p }}
    <input type="submit" value="Submit" />
</form>

когда я отображаю from, я просто вижу кнопку отправки...


person Benoit Vanalderweireldt    schedule 20.02.2013    source источник
comment
Вроде все нормально, вы ничего не пропустили при публикации?   -  person Rohan    schedule 20.02.2013
comment
Нет, я ничего не пропустил, я застрял на этом сейчас...   -  person Benoit Vanalderweireldt    schedule 20.02.2013


Ответы (1)


Внутренний класс meta должен быть написан с большой буквы - Meta

class UserProfileForm(forms.ModelForm):
    class Meta:  # not meta
        model = UserProfile
person pyrospade    schedule 20.02.2013