Django:在Python Shell中访问管理员用户

Nic*_*k B 7 python django profile

我正在使用Django Userena,但是当尝试登录django管理界面时,userena正在创建一个大惊小怪:Profile matching query does not exist.

如何使用shell为admin用户创建配置文件?这是我的个人资料模型,但我不知道如何访问管理员用户为其创建个人资料对象的密钥:

class Profile(UserenaBaseProfile, FacebookProfileModel):
    user = models.OneToOneField(User,
                                unique=True,
                                verbose_name=('user'),
                                related_name='my_profile')
    website = models.URLField(null=True, blank=True)
Run Code Online (Sandbox Code Playgroud)

我知道这可能很简单,但到目前为止谷歌已经失败了...感谢你的想法!

PS.我曾经能够毫无问题地登录我的管理界面,但现在有些事情发生了变化,我收到了Profile matching query does not exist错误(我也没有改变代码)..任何我现在无法登录的想法也赞赏.谢谢!

kar*_*ikr 21

你可以这样做:

$ ./manage.py shell
> from django.contrib.auth.models import User
> from <profile_package>.models import Profile
> user = User.objects.get(username='<admin_user_name>')
> profile = Profile(user=user)
> profile.save()
Run Code Online (Sandbox Code Playgroud)