Ben*_*ldt 1 django django-forms django-users
我知道他们已经有很多关于那个帖子,但我尝试了很多解决方案,我无法显示我的表格!
我想做一些非常简单的事情(我是一个Django初学者),我创建一个特定的UserProfile来扩展基本的,我想让用户编辑它:
这是我的模型:
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)
Run Code Online (Sandbox Code Playgroud)
这是我的查看方法:
@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)
Run Code Online (Sandbox Code Playgroud)
这是我的模板:
<form action="/contact/" method="post">
{{ form.as_p }}
<input type="submit" value="Submit" />
</form>
Run Code Online (Sandbox Code Playgroud)
当我显示从我只看到提交按钮...
该meta内部类予以资本化-Meta
class UserProfileForm(forms.ModelForm):
class Meta: # not meta
model = UserProfile
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
538 次 |
| 最近记录: |