目錄
原視頻教程鏈接
Models
ORM
Models使用了對象關係映射技術(Object Relation Mapping)
中間件(Middleware)
個人認爲Models也屬於中間件
實例
- 創建數據表類
修改blog/models.py爲:
from django.db import models # 引入models模塊
# 創建文章數據類
class Article(models.Model):
title = models.CharField(max_length=32, default='Title') # 文章標題
content = models.TextField(null=True) # 文章內容
生成數據表
- 命令行進入
manage.py
同級目錄 - 執行
python manage.py makemigrations
- 再執行
python manage.py migrate
- 命令行進入
查看
blog/migrations/0001_initial.py
發現多出個id
,因爲我們之前沒有指定主鍵,所以自動生成了一個默認自增主鍵id
查看SQL語句
- 命令行進入
manage.py
同級目錄 - 執行
python manage.py sqlmigrate blog 0001
- 命令行進入
使用數據庫可視化工具SQLite Expert Personal
下載地址:
SQLite Expert Personal 4.2 x64 百度網盤下載地址- 使用SQLite Expert Personal打開
myblog/db.sqlite3
- 在blog_article表中添加一條 title爲article1 content爲content1的表項
- 使用SQLite Expert Personal打開
頁面呈現數據
修改blog/views.py爲:
from django.shortcuts import render
from . import models # 引入models.py
def index(request):
article = models.Article.objects.get(pk=1) # 獲取主鍵id爲1的article
return render(request, 'blog/index.html', {'article': article})
修改templates/blog/index.html爲:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h1>{{ article.content }}</h1>
</body>
</html>
瀏覽器訪問localhost:8000/blog/index
可以看到content1