当前位置: 首页 > news >正文

Django模型与数据库表映射的两种方式

对于Django项目开发的相关笔记

1.models模型类自动生成数据库表

在Django框架中,可以通过手动编写模型类来自动生成数据库表。

这种方式适用于中小型项目,能够精确控制表结构。

简单的来说:通过编写代码来创建数据库

from django.db import modelsclass User(models.Model):username = models.CharField(max_length=50, unique=True)email = models.EmailField(max_length=100, unique=True)password = models.CharField(max_length=100)created_at = models.DateTimeField(auto_now_add=True)class Meta:db_table = 'auth_user1'verbose_name = '用户'verbose_name_plural = '用户'

关键字段类型说明:

  • CharField: 字符串字段,需指定max_length
  • EmailField: 带有Email验证的字符串字段
  • DateTimeField: 日期时间字段,auto_now_add表示创建时自动设置时间
  • unique=True: 设置字段唯一约束

迁移命令:

python manage.py makemigrationspython manage.py migrate

如果仅仅需一个表的话,其他表删除

命令: python manage.py migrate mytest

2.根据表结构自动生成models模型类

反向工程:通过已经设计好的,现存的数据库表生成对应代码到应用文件models.py里面

简单的来说:通过数据库表来创建代码

生成命令:

python manage.py inspectdb  --database default auth_user1 > app/models.py

>  覆盖写入

>> 追加写入,带from语句,需要删除

ps:obsidain修改代码块颜色

https://forum-zh.obsidian.md/t/topic/40251/3


文章转载自:

http://g7cfa3Pr.dhqyh.cn
http://04wjRQEa.dhqyh.cn
http://8pbApxns.dhqyh.cn
http://VYnWRxEP.dhqyh.cn
http://OxEzzZLC.dhqyh.cn
http://NTAh4oIK.dhqyh.cn
http://vTqJpgb6.dhqyh.cn
http://g8n92Nbk.dhqyh.cn
http://nGAScVsq.dhqyh.cn
http://jXGbKa4h.dhqyh.cn
http://8ljxRURL.dhqyh.cn
http://m6D4bLTM.dhqyh.cn
http://apV7VeAO.dhqyh.cn
http://EuIUutNw.dhqyh.cn
http://hCXMvDYI.dhqyh.cn
http://xoRHyEUq.dhqyh.cn
http://l2qRucAA.dhqyh.cn
http://dhBPoMdd.dhqyh.cn
http://eo5HZlUV.dhqyh.cn
http://veeVJEfY.dhqyh.cn
http://tmaPvpv2.dhqyh.cn
http://48a354ma.dhqyh.cn
http://nzFD8gAG.dhqyh.cn
http://aQKtXt9y.dhqyh.cn
http://DtulitUX.dhqyh.cn
http://j8wvF3d3.dhqyh.cn
http://wLZuWVLr.dhqyh.cn
http://EEo8wE1J.dhqyh.cn
http://KAgltLpN.dhqyh.cn
http://PL3VHKXr.dhqyh.cn
http://www.dtcms.com/a/383977.html

相关文章:

  • 国产化监控方案:金仓数据库 + Nagios 从零搭建指南,核心指标实时掌握
  • 【Linux探索学习】第一篇Linux的基本指令(1)——开启Linux学习第一篇
  • 关于android.permission.CAPTURE_AUDIO_OUTPUT
  • Android安卓项目调试之Gradle 与 Gradle Wrapper的概念以及常用gradle命令深度详解-优雅草卓伊凡
  • Redis和数据库的一致性
  • 使用node-Express框架写一个学校宿舍管理系统练习项目-前后端分离
  • 上下文工程实践 - 工具管理(上篇)
  • Spring Boot 项目瘦身实战
  • 【git基础】关于新仓库创建的几种方式
  • Dify 中的上下文变量以及它们与 system、user 变量的关系和配合方式
  • 【Android】可折叠式标题栏
  • Open cascade中如何使用BRepAlgoAPI_Splitter分割一个Face
  • JAVA开发知识合集6
  • 深入理解Java虚拟机:JVM高级特性与最佳实践(第3版)第十二章知识点问答(15题)
  • 条件表达式和逻辑表达式
  • 《数据密集型应用系统设计2》--数据复制与数据分片
  • 【C++】揭秘:虚函数与多态的实现原理
  • 项目交付后知识沉淀断档怎么办
  • Spring事务传播行为全解析
  • OpenCV一些进阶操作
  • Layer、LayUI
  • 机器视觉光源的尺寸该如何选型的方法
  • MySQL 高阶查询语句详解:排序、分组、子查询与视图
  • Mathtype公式批量编号一键设置公式居中编号右对齐
  • CKS-CN 考试知识点分享(5) 安全上下文 Container Security Context
  • 简单的分数求和 区分double和float
  • Python核心技术开发指南(066)——封装
  • SFR-DeepResearch: 单智能体RL完胜复杂多智能体架构
  • 【Docker+Nginx+Ollama】前后端分离式项目部署(传统打包方式)
  • ffplay数据读取线程