Django2.1.2创建默认管理后台
1、在app的models.py中添加以下代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 | from django.db import models # Create your models here. # Register your models here. class UserType(models.Model): name = models.CharField(max_length = 32 ) class UserInfo(models.Model): username = models.CharField(max_length = 32 ) pwd = models.CharField(max_length = 32 ) email = models.CharField(max_length = 32 ) user_type = models.ForeignKey( 'UserType' ,on_delete = models.CASCADE,) |
注意一些书上写的是user_type = models.ForeignKey(UserType),因为他们用的是Django2.0之前的版本,如果不加“on_delete=models.CASCADE”则以下错误:
原因:
在django2.0后,定义外键和一对一关系的时候需要加on_delete选项,此参数为了避免两个表里的数据不一致问题,不然会报错:
TypeError: __init__() missing 1 required positional argument: 'on_delete'
参数说明:
on_delete有CASCADE、PROTECT、SET_NULL、SET_DEFAULT、SET()五个可选择的值
CASCADE:此值设置,是级联删除。
PROTECT:此值设置,是会报完整性错误。
SET_NULL:此值设置,会把外键设置为null,前提是允许为null。
SET_DEFAULT:此值设置,会把设置为外键的默认值。
SET():此值设置,会调用外面的值,可以是一个函数。
一般情况下使用CASCADE就可以了。
2、在app的admin.py中添加以下代码:
1 2 3 4 | from django.contrib import admin from cmdb import models admin.site.register(models.UserInfo) admin.site.register(models.UserType) |
3、在主工程的setting.py文件中添加app:
4、在cmd中依次运行以下命令:
python manage.py makemigrations
--更新代码
python manage.py migrate
--上述是创建表结构
python manage.py createsuperuser
--上面这条命令是创建超级管理员的
python manage.py runserver
5、运行成功后访问:http://127.0.0.1:8000/admin/ 登录后即可进入Django的默认管理后台。
微信

支付宝

【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类