Python 修改django管理员用户界面
我是django的新手,我正在听一些视频讲座。完全按照说明操作后,我无法添加额外的用户管理界面。我附上modes.py和admin.py供检查。请帮帮我 型号.pyPython 修改django管理员用户界面,python,django,django-models,django-admin,Python,Django,Django Models,Django Admin,我是django的新手,我正在听一些视频讲座。完全按照说明操作后,我无法添加额外的用户管理界面。我附上modes.py和admin.py供检查。请帮帮我 型号.py class UserProfile(models.Model): user = models.OneToOneField(User, unique=True) #Extra values bio = models.TextField(null=True) def __unicode__(self):
class UserProfile(models.Model):
user = models.OneToOneField(User, unique=True)
#Extra values
bio = models.TextField(null=True)
def __unicode__(self):
return '%s Profile' % self.user
def create_profile(sender, instance, created, **kwargs):
if created:
profile, created = UserProfile.objects.get_or_create(user=instance)
from django.db.models.signals import post_save
post_save.connect(create_profile, sender=User )
class UserProfileInLIne(admin.StackedInline):
model = UserProfile
can_delete = False
class UserProfileAdmin(UserAdmin):
inline = (UserProfileInLIne, )
admin.site.unregister(User)
admin.site.register(User, UserProfileAdmin)
Admin.py
class UserProfile(models.Model):
user = models.OneToOneField(User, unique=True)
#Extra values
bio = models.TextField(null=True)
def __unicode__(self):
return '%s Profile' % self.user
def create_profile(sender, instance, created, **kwargs):
if created:
profile, created = UserProfile.objects.get_or_create(user=instance)
from django.db.models.signals import post_save
post_save.connect(create_profile, sender=User )
class UserProfileInLIne(admin.StackedInline):
model = UserProfile
can_delete = False
class UserProfileAdmin(UserAdmin):
inline = (UserProfileInLIne, )
admin.site.unregister(User)
admin.site.register(User, UserProfileAdmin)
为什么不省去麻烦,使用自定义用户模型呢 这样,您就有了一个用于写入的模型,只有一个用于在视图中调用它的模型
# settings.py
AUTH_USER_MODEL = 'yourapp.UserProfile'
# models.py
class UserProfile(AbstractBaseUser):
#Extra values
bio = models.TextField(null=True)
# admin.py
admin.site.register(UserProfile)
如果你想在其他任何地方使用用户实例(即其他模型、视图),只需使用
设置。AUTH\u user\u MODEL
我认为问题在于你使用的是内联
而不是内联
。这里有到django源代码的链接
希望这有帮助。您好,您的代码看起来正确,但可能您忘记注册“个人资料”应用程序了?嘿,谢谢您的回复我注册了应用程序问题是当我打开用户管理页面时,没有显示个人信息。嘿,谢谢,我在检查多次后得到了答案。它的打字错误使用了“内联”而不是“内联”谢谢谢谢在检查你的答案之前我写了评论请不要介意