📅  最后修改于: 2023-12-03 15:37:20.930000             🧑  作者: Mango
Django 是一个 Python Web 框架,它使用模型-视图-控制器(MVC)的设计模式来构建 Web 应用程序。它还提供了一种称为模板语言(Template Language)的方法,让你在 HTML 中访问 Django 对象。
创建一个 Django 应用程序, 命名为 myapp
在 myapp 目录下创建一个模型模块,例如 models.py
,并定义一个模型类,例如:
from django.db import models
class Book(models.Model):
title = models.CharField(max_length=200)
author = models.CharField(max_length=100)
pub_date = models.DateField()
views.py
,并添加一个视图函数,它将检索出所有书籍并将它们传递给模板:from django.shortcuts import render
from .models import Book
def book_list(request):
books = Book.objects.all()
return render(request, 'myapp/book_list.html', {'books': books})
book_list.html
,并使用模板语言来访问传递给模板的对象:<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>My Book Collection</title>
</head>
<body>
<h1>My Book Collection</h1>
<ul>
{% for book in books %}
<li>{{ book.title }} by {{ book.author }}</li>
{% endfor %}
</ul>
</body>
</html>
此模板代码将显示 Book 模型中的所有书籍的标题和作者。 {% for book in books %}
开始一个 for
循环,遍历 books
变量中的所有 Book
对象。在循环的每个迭代中,title
和 author
属性将使用双花括号({{ property }}
)来添加到列表项中,其中 property
是模型属性的名称。
urls.py
,并将其连接到视图:from django.urls import path
from . import views
urlpatterns = [
path('books/', views.book_list, name='book_list'),
]
urls.py
中包含完整的 URL 控制器:from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('myapp/', include('myapp.urls')),
]
现在你可以在浏览器中访问 http://localhost:8000/myapp/books/
URL,并查看你的书籍列表。对于每个书籍,列表项将由书籍的标题和作者组成。
在 HTML 中访问 Django 对象非常容易,通过使用 Django 模板语言,你可以轻松地将数据库对象呈现为 Web 页面的一部分。