Django--models.py

Django Models 是 Django 框架中的一个核心组件,它提供了一种声明式的方式来定义数据库中的表结构,并通过 Django 的对象关系映射(ORM)功能来操作这些表。

定义与用途

定义:Django Models 是 Python 类,用于定义数据库中的表结构以及表中的字段。

用途:通过 Models,开发者可以以一种面向对象的方式来操作数据库,而无需编写 SQL 语句。

字段类型

Django Models 提供了多种字段类型,用于定义表中的字段。这些字段类型包括:

CharField:用于定义字符串字段,需要指定最大长度。

TextField:用于定义大文本字段,没有长度限制。

IntegerField:用于定义整数字段。

DateField:用于定义日期字段。

DateTimeField:用于定义日期和时间字段。

EmailField:用于定义电子邮件地址字段,会自动进行格式验证。

ForeignKey:用于定义外键关系,指向另一个模型。

ManyToManyField:用于定义多对多关系,可以在两个模型之间建立多个关联。

模型继承

Django Models 支持继承,子类模型可以继承父类模型的字段和方法。通过继承,可以创建具有共同属性的模型层次结构。

Meta 类

在 Django Models 中,可以使用 Meta 类来定义一些额外的选项,如数据库表名、排序方式等。

复制代码
class MyModel(models.Model):  
    # 字段定义  
    name = models.CharField(max_length=100)  
  
    class Meta:  
        db_table = 'my_table_name'  # 指定数据库表名  
        ordering = ['-name']  # 指定排序方式

数据库操作

Django Models 提供了丰富的数据库操作方法,包括查询、添加、更新和删除记录。

查询 :使用 all()filter()get() 等方法查询记录。

添加 :使用 create() 方法添加新记录。

更新 :使用 update() 方法更新记录。

删除 :使用 delete() 方法删除记录。

迁移与同步

在修改了模型定义后,需要使用 Django 的迁移工具来将更改同步到数据库中。这包括生成迁移文件和应用迁移文件两个步骤。通过执行 python manage.py makemigrationspython manage.py migrate 命令,可以完成迁移过程。

相关推荐
NineData1 分钟前
NineData 智能数据管理平台新功能发布|2026 年 3 月
数据库·oracle·架构·dba·ninedata·数据复制·数据迁移工具
AI_Claude_code3 分钟前
ZLibrary访问困境方案三:Web代理与轻量级转发服务的搭建与优化
爬虫·python·web安全·搜索引擎·网络安全·web3·httpx
小陈工6 分钟前
2026年4月7日技术资讯洞察:下一代数据库融合、AI基础设施竞赛与异步编程实战
开发语言·前端·数据库·人工智能·python
❀͜͡傀儡师6 分钟前
k8s部署的Nexus 3 数据库损坏恢复指南:从删除损坏数据库到完整数据重建
数据库·kubernetes·nexus3
时空无限12 分钟前
ansible 由于不同主机 python 版本不同执行报错
python·ansible
ZhengEnCi15 分钟前
P2E-Python字典操作完全指南-从增删改查到遍历嵌套的Python编程利器
python
alanesnape16 分钟前
使用AVL平衡树和列表实现 map容器 -- 附加测试/python代码
python·map·avl 平衡树·bst树·二叉树旋转
卤炖阑尾炎36 分钟前
Python 网络编程实战:从 TCP/UDP 基础到高并发服务器开发
网络·python·tcp/ip
StackNoOverflow1 小时前
Spring Security权限控制框架详解
java·数据库·sql
weixin_513449961 小时前
walk_these_ways项目学习记录第八篇(通过行为多样性 (MoB) 实现地形泛化)--策略网络
开发语言·人工智能·python·学习