【发布时间】:2012-03-31 09:26:09
【问题描述】:
快速(可能是愚蠢的)问题。这是我网站的流程:用户登录并被重定向到自定义管理页面。在此管理页面上,他们可以创建“个人资料”。我想将他们创建的配置文件与其用户数据相关联,以便 1 个用户关联到 1 个配置文件。
由于某种原因,以下不起作用(只是尝试关联
UserAdmin.Models
from django.db import models
from django.contrib.auth.models import User
class Profile(models.Model):
username = models.ForeignKey(User)
firstname = models.CharField(max_length=200)
lastname = models.CharField(max_length=200)
email = models.EmailField(max_length=200)
def __unicode__(self):
return self.username
UserAdmin.Views
def createprofile(request):
user = User.objects.get(id=1)
profile = Profile(username=user, firstname='Joe', lastname='Soe', email='Joe@Soe.com')
profile.save()
我不断收到:表 useradmin_profile 没有名为 username_id 的列
有什么想法吗?赞赏。
编辑:
删除了我的数据库并运行了一个新的同步数据库,更改为用户名 = models.OneToOneField(User)。现在我得到 Cannot assign "u'superuser'": "Profile.username" must be a "User" instance.
【问题讨论】: