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 命令,可以完成迁移过程。

相关推荐
欢呼的太阳8 小时前
数据库设计Step by Step (10)——范式化
服务器·数据库·oracle
夜雪一千9 小时前
Python enumerate() 函数完整详解:遍历同时获取索引,告别手动计数
服务器·windows·python
喜欢的名字被抢了9 小时前
MySQL基础入门:从零理解数据库与SQL
数据库·mysql·教程
能有时光9 小时前
PyTorch KernelAgent 源码解读 ---(4)--- ExtractorAgent
人工智能·pytorch·python
_Jimmy_10 小时前
Python 协程库如何使用以及有哪些使用场景
python
aqi0010 小时前
15天学会AI应用开发(十七)使用LangGraph实现会话记忆功能
人工智能·python·大模型·ai编程·ai应用
Elastic 中国社区官方博客10 小时前
如何比较两个 Elasticsearch 索引并找出缺失的文档
大数据·运维·数据库·elasticsearch·搜索引擎
第一程序员10 小时前
Rust Agent 子进程执行:Command 之前,先定义输入和超时
python·rust·github
DLYSB_10 小时前
生命通道:如何用 HIS 医疗系统直连网络声光终端,打造“零延误”的危急值响应网关?
java·网络·数据库·报警灯
儒雅的大叔11 小时前
MySQL数据库InnoDB数据恢复工具使用总结
数据库·mysql·adb