在Django中,模型(Model)是用于定义数据结构和行为的一个核心概念。下面是在Django中定义和使用模型的基本步骤:
python manage.py startapp myapp
例如:
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() is_published = models.BooleanField(default=False) def __str__(self): return self.title
在上面的代码中,我们定义了一个名为Book的模型,它包含了标题、作者、出版日期和是否出版等字段。我们还定义了一个__str__方法,用于返回模型的字符串表示。
python manage.py makemigrations python manage.py migrate
这会根据模型定义创建相应的数据库表。
例如:
from django.shortcuts import render from myapp.models import Book def book_list(request): books = Book.objects.all() return render(request, 'book_list.html', {'books': books})
在上面的代码中,我们从myapp.models中导入Book模型,并使用objects.all()方法获取所有的书籍对象,最后将它们传递给模板book_list.html中进行展示。
例如:
{% for book in books %} <div> <h2>{{ book.title }}</h2> <p>{{ book.author }} - {{ book.published_date }}</p> {% if book.is_published %} <p>已出版</p> {% else %} <p>未出版</p> {% endif %} </div> {% endfor %}
在上面的代码中,我们使用了模板标签{{}}来展示Book模型中的字段。我们还使用了{% if %}和{% endif %}标签来根据is_published字段的值展示不同的内容。