Django ORM(对象关系映射)是 Django 框架的核心组件之一,它通过将数据库表映射为 Python 类(模型)的方式,简化了数据操作。以下是关键知识点:
1. ORM 基础概念
模型定义:使用
models.Model
类创建数据表结构from django.db import models class Book(models.Model): title = models.CharField(max_length=100) author = models.CharField(max_length=100)
字段类型:支持
CharField
、IntegerField
、DateTimeField
等内置字段数据库操作:通过类方法实现增删改查(如
Book.objects.filter(...)
)
2. 核心优势 ✅
- 数据库无关性:支持 SQLite、PostgreSQL、MySQL 等多种数据库
- 自动化迁移:通过
makemigrations
和migrate
命令管理表结构 - 查询优化:提供链式查询语法(如
Book.objects.filter(author__contains="杨")
)
3. 实践技巧 💡
- 使用
select_related
和prefetch_related
优化多表查询 - 通过
values()
方法获取原始数据库字段数据 - 探索 Django ORM 高级查询文档 学习复杂查询技巧
4. 常见场景示例
- 创建对象:
Book.objects.create(title="Python编程", author="张伟")
- 查询数据:
Book.objects.get(id=1)
- 更新记录:
book.title = "Django实战"
→book.save()
- 删除数据:
book.delete()
通过 ORM,开发者可以像操作 Python 对象一样处理数据库数据,显著提升开发效率。建议结合 Django ORM 官方教程 进行实操练习。