【Django | 开发】 为已有遗留系统数据库生成管理后台
🤵♂️ 个人主页: @计算机魔术师👨💻 作者简介:CSDN 内容合伙人,全栈领域优质创作者。
🌐 推荐一款找工作神器网站: 牛客网🎉🎉|笔试题库|面试经验|实习招聘内推 还没账户的小伙伴 速速点击链接跳转牛客网登录注册 开始刷爆题库,速速通关面试吧🙋♂️
该文章收录专栏✨---【Django | 项目开发】从入门到上线 专栏---✨
@[toc]
1)目标
2) 生产表
创建新的项目并注册到项目中
配置数据库
生成应用(不生产表没地方生成)
如果是 sqlite 数据库,则需要复制需要管理项目的数据库到创建的项目(如果是
mysql
,则需要在 setting 和__init__文件进行配置数据库)
这里是生成了全部的表,我们可以手动删除不要的模型,不过建议的方法是添加我们想要添加对应的模型,我们可以添加参数python manage.py inspectdb [models,models...] > 应用/model.py
( 注: 一张表生成一个模型 )
删除不需要维护的模型表,并将外键为
AuthUser
更改为User
,如果一个模型有多个外键,则需要并对其添加related_name
区分
<hr>
注意点一: (这里的 managed = False 是指不与数据库里面的结构保持一致,如果保持同步,会将原生产环境的内容覆盖掉,)
注意点二: 由于生产的
model.py文件
编码格式为 UTF-16,更改文件编码为 UTF-8,不然报错
3)注册 admin
4)效果
运行服务器(直接登录管理员后台,由于数据库有管理员张合信息了,可以直接登录)
5) mysql
如果是 mysql 数据库的话,我们在 setting.py 直接配置对应的数据库即可,二者会自动同步,此时可以直接修改管理数据,sqlite 轻量级数据库 一个数据库是一个文件,此时要管理需要复制粘贴过来才能同步
参考文献source code string cannot contain null bytes报错ispectdb用法
评论