推荐答案
// www.javascriptcn.com code example
# 导入 Django 的 models 模块
from django.db import models
# 定义一个模型类
class Book(models.Model):
title = models.CharField(max_length=100)
author = models.CharField(max_length=100)
published_date = models.DateField()
def __str__(self):
return self.title
# 创建并保存一个新对象
book = Book(title="Django for Beginners", author="William S. Vincent", published_date="2020-01-01")
book.save()
# 查询所有对象
books = Book.objects.all()
# 过滤查询
books_by_author = Book.objects.filter(author="William S. Vincent")
# 获取单个对象
book = Book.objects.get(id=1)
# 更新对象
book.title = "Django for Professionals"
book.save()
# 删除对象
book.delete()本题详细解读
1. 定义模型
在 Django 中,模型是数据库表的 Python 表示。每个模型类对应数据库中的一张表,模型的属性对应表中的字段。通过继承 django.db.models.Model 类来定义模型。
class Book(models.Model):
title = models.CharField(max_length=100)
author = models.CharField(max_length=100)
published_date = models.DateField()2. 创建并保存对象
通过实例化模型类来创建一个新的对象,并调用 save() 方法将其保存到数据库中。
book = Book(title="Django for Beginners", author="William S. Vincent", published_date="2020-01-01") book.save()
3. 查询对象
Django ORM 提供了多种查询方法:
objects.all():获取所有对象。objects.filter():根据条件过滤对象。objects.get():获取单个对象。
books = Book.objects.all() books_by_author = Book.objects.filter(author="William S. Vincent") book = Book.objects.get(id=1)
4. 更新对象
通过修改对象的属性并调用 save() 方法来更新数据库中的记录。
book.title = "Django for Professionals" book.save()
5. 删除对象
调用 delete() 方法可以从数据库中删除对象。
book.delete()
6. 其他常用操作
objects.create():创建并保存对象。objects.update():批量更新对象。objects.count():获取对象的数量。
Book.objects.create(title="Django for Beginners", author="William S. Vincent", published_date="2020-01-01") Book.objects.filter(author="William S. Vincent").update(title="Django for Experts") count = Book.objects.count()
通过这些操作,你可以使用 Django ORM 轻松地进行数据库的增删改查操作。