我在Django v4中创建了一个模型,我想在User admin视图中显示信息。迁移之后,成功创建了一个新表,并且正在存储数据。下面是代码:
models.py
from django.db import models
from django.contrib.auth.models import User
class Profile(models.Model):
user = models.OneToOneField(
User,
on_delete=models.CASCADE
)
address = models.CharField(
max_length=20,
blank=True,
null=True
)
def __str__(self):
return self.user.username
admin.py
from django.contrib import admin
from django.contrib.auth.models import User
from .models import Profile
class ProfileInline(admin.StackedInline):
model = Profile
can_delete = False
verbose_name_plural = 'Extra Information'
@admin.register(ProfileInline)
class UserAdmin(admin.ModelAdmin):
inlines = [
ProfileInline,
]
已创建的表存储了以下内容:
我找到解决办法了。admin.py应该是这样的:
from django.contrib import admin
from django.contrib.auth.models import User
from .models import Profile
class ProfileInline(admin.StackedInline):
model = Profile
can_delete = False
verbose_name_plural = 'Extra Information'
class UserAdmin(admin.ModelAdmin):
inlines = [
ProfileInline,
]
admin.site.unregister(User)
admin.site.register(User, UserAdmin)
在这种情况下,更好的方法是继承Django的AbstractUser类,添加您的附加字段,然后在settings中设置Django的AUTH_USER_MODEL
,以便Django使用您的模型进行身份验证。https://docs.djangoproject.com/en/4.0/ref/settings/std-setting-AUTH_USER_MODEL
models.py
from django.db import models
from django.contrib.auth.models import AbstractUser
class Profile(AbstractUser):
address = models.CharField(
max_length=20,
blank=True,
null=True
)
def __str__(self):
return self.username
settings.py
AUTH_USER_MODEL = "<your_app_name>.Profile"
相关内容
- 没有找到相关文章
最新更新
- 在Oauth应用程序中,如何从express服务器传递访问令牌到react应用程序?
- <a> 在按钮提交时打开选定的标签链接?
- 具有重复图像作为装饰的水平可滚动容器
- 错误:宏"断言"传递了 2 个参数,但只占用 1 个参数
- 如何检测Android设备在其浏览器中访问的链接并将url发送到另一个应用程序?
- #SET TERMINATOR语句的目的是什么?
- 类型错误:只能将 str(不是"字节")连接到套接字模块中的 str
- react-router-dom:如何用某种模式匹配url
- 为什么将单个字节类型转换为字符串在go中不起作用?
- 如何在MySql中返回不同的列而不是标准列?查询
- Listener Facebook Login in Supabase Flutter
- Javascript添加类到多个元素,除了一个
- 在windows上使用R导入xkcd字体(适用于xkcd包)
- 如何在用户输入不正确的值后使python循环程序?
- <picture> 元素在媒体查询/属性之间闪烁到 100% 宽度
- Django模板-使用字符串从表单中呈现一个字段
- didReadRSSI事件在声明后台模式进入后台时停止工作
- Twilio SMS (Java)执行失败
- 如何使用相同的算法创建两个SSH密钥?
- c -指针到数组,malloc和越界访问
- 遍历JavaScript数组不能产生正确的结果
- RegEx在SAP 7.5中以字符的第一次出现开始并结束
- 使用MS Graph Rest APi上传文件到Documentset
- 忽略正则表达式搜索中的模式错误,不要使搜索崩溃
- 在一个帐户上有多个Youtube频道.如何将提供的API密钥限制为仅1个通道?
- 如何根据输入列表中的项数更改URL ?
- scipy. integrated .quad给出ValueError:给出无效的可调用对象
- 将Pandas Datetime转换为Postgres Date
- 不能在caporal中使用prog模块
- 使用Powershell打开特定的Outlook配置文件
热门标签:
javascript python java c# php android html jquery c++ css ios sql mysql arrays asp.net json python-3.x ruby-on-rails .net sql-server django objective-c excel regex ruby linux ajax iphone xml vba spring asp.net-mvc database wordpress string postgresql wpf windows xcode bash git oracle list vb.net multithreading eclipse algorithm macos powershell visual-studio image forms numpy scala function api selenium