[英]Extend User Model from Django?
How I create new Users: 我如何创建新用户:
from twittexApp.forms import UserCreationForm
from django.views.generic import CreateView
from twittexApp.models import RegUser, User
class RegisterView(CreateView):
template_name = 'register.html'
model = RegUser
success_url = '/login/'
form_class = UserCreationForm
My extended User Model: 我的扩展用户模型:
from django.db import models
from django.contrib.auth.models import User
class RegUser(models.Model):
user = models.OneToOneField(User)
description = models.CharField(max_length = 140, default="foo")
My question is how do I get the attribute "description" from an user? 我的问题是如何从用户那里获得属性“描述”?
I already know that I can get the "standard" user model via 我已经知道我可以通过“标准”用户模型获得
<h1>My Profile</h1>
<ul>
<div>{{ request.user.username }}</div>
</ul>
But getting the description doesnt work. 但是获得描述并不起作用。 I tried 2 different versions but it doesnt show "foo".
我尝试了2个不同的版本,但它没有显示“foo”。
<h1>My Profile</h1>
<ul>
<div>{{ request.user.desciption }}</div>
<div>{{ request.user.reguser.desciption }}</div>
</ul>
Maybe is a fool answer but you have a miss spell. 也许是一个傻瓜的答案,但你有一个错过咒语。
Change: 更改:
For this: 为了这:
{{ request.user.reguser.description }}
You can access "reverse" side of the relation. 您可以访问关系的“反向”侧。 In this case
user.reguser
. 在这种情况下
user.reguser
。 Also check, if user
has related RegUser
instance. 如果
user
有相关的RegUser
实例,请检查。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.