編寫第一個Django頁面
編寫流程
- 數(shù)據(jù)模型(finished)
- URL配置
- 控制器
- 頁面
URL配置
總url.py的代碼
urlpatterns = [
url(r'^admin/', include(admin.site.urls)),
url(r'^$', "block.views.block_list"),
]
- r 防止后面的字符串被轉義
views.py (控制器)編寫
from django.shortcuts import render_to_response
from models import Block
def block_list(request):
blocks = Block.objects.all().order_by("-id")
return render_to_response("block_list.html", {"blocks": blocks})
- render_to_response 渲染及返回模板
- .objects 對數(shù)據(jù)庫操作
- -id 負號表示倒序
- blocks 的類型是一個django定義的數(shù)據(jù)類型??set吕粹,查詢的結果集
- render_to_response 字典是給模板渲染的變量,可以多個key
頁面模板
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Python部落論壇</title>
</head>
<body>
<h1>Python部落論壇</h1>
{% for block in blocks %}
<div class="blockitem">
{{ block.name }}
{{ block.decs }}
{{ block.manager.username }}
</div>
{% endfor %}
</body>
</html>
- for 對每一個block輸出一遍開閉標簽部分的html代碼
- {{ }} django 語法君珠,把大括號里面的值輸出
創(chuàng)建模板html文件
mkdir block/templates
touch block/templates/block_list.html
用bootstrap美化頁面
<link rel="stylesheet" >
grid網(wǎng)格來劃分布局
<div class="container">
<div class="row">
<div class="col-sm-10 col-md-6">
A
</div>
<div class="col-sm-10 col-md-6">
B
</div>
</div>
</div>
表格
<table class="table">
<tr>
<td>A</td>
<td>B</td>
</tr>
<tr>
<td>C</td>
<td>D</td>
</tr>
</table>
- table class 指定表格的樣式table table-stipe table-bordered table-hover等
按鈕
<button type="button" class="btn btn-success"></button>
- bootstrap 定義class究流,class里面兩個屬性 第一個基本 第二個形式
well 井
<div class="well">...</div>