-
課程目標(biāo):
1.學(xué)習(xí)Django的基本用法2.了解Django的原理及其組件的意義
3.獨立使用Django就進行網(wǎng)站開發(fā)
查看全部 -
Admin
配置
查看全部 -
Django Shell
查看全部 -
小技巧:
過濾器
查看全部 -
edit_page.html
<form?action="{%?url?'myblog:edit_action'?%}"?method="post"> ????{%?csrf_token?%}?<!--防攻擊,不加的話會403錯誤。post方法都需要添加csrf?--> ????<label>文章標(biāo)題 ????????<input?type="text"?name="title"/> ????</label> ????<br/> ????<label>文章內(nèi)容 ????????<input?type="text"?name="content"/> ????</label> ????<br/> ????<input?type="submit"?value="提交"> </form>
views.py
def?edit_action(request): ????title?=?request.POST.get('title',?'TITLE') ????content?=?request.POST.get('content',?'CONTENT') ????models.Article.objects.create(title=title,?content=content) ????articles?=?models.Article.objects.all() ????return?render(request,?'myblog/index.html',?{'articles':?articles})
myblog/urls.py 添加url
url(r'^edit/action$',?views.edit_action,?name='edit_action'),
查看全部 -
hf_blog/urls.py 添加namespace
urlpatterns?=?[ ????url(r'^admin/',?admin.site.urls), ????url(r'^myblog/',?include('myblog.urls',?namespace='myblog')) ????]
mybog/urls.py 添加name
urlpatterns?=?[ ????url(r'^index$',?views.index), ????url(r'^article/(?P<article_id>[0-9]+)$',?views.article_page,?name='article_page'), ]
index.html
{%?for?article?in?articles?%} ????<a?href="{%?url?'myblog:article_page'?article.id?%}">{{?article.title?}}</a> ????<br/> {%?endfor?%}
查看全部 -
URl參數(shù)傳遞
url(r'^index$',?views.index), url(r'^article/(?P<article_id>[0-9]+)$',?views.article_page),
兩url之間需要寫逗號
url正則中組名和參數(shù)名一致
views.py
def?article_page(request,?article_id): ????article?=?models.Article.objects.get(pk=article_id) ????return?render(request,?'myblog/article_page.html',?{'article':article})
查看全部 -
創(chuàng)建超級用戶
python?manage.py?createsuperuser
Admin入口
localhost:8000/admin/
后臺修改為中文
setting.py
LANGUAGE_CODE?=?'zh_Hans'
admin.py
from?.?models?import?Article admin.site.register(Article)
修改后臺文章列表
models.py
def?__str__(self): ????return?self.title
查看全部 -
model.py
class?Article(models.Model): ????title?=?models.CharField(max_length=32,?default?='Title') ????content?=?models.TextField(null=True)
生成數(shù)據(jù)
python?manage.py?makemigrations
數(shù)據(jù)遷移
python?manage.py?migrate
查看sql
python?manage.py?sqlmigrate?myblog?0001
添加數(shù)據(jù)
views.py
def?index(request): ????article?=?models.Article.objects.get(pk=1) ????return?render(request,?'myblog/index.html',?{'article':?article})
啟動服務(wù)
python?manage.py?runserver
查看全部 -
移植數(shù)據(jù)庫
python manage.py makemigrations
然后
python manage.py migrate
查看全部 -
出現(xiàn)post請求的表單都需要在表單下添加{% csrf_token %}
查看全部 -
編輯響應(yīng)函數(shù)
查看全部 -
超鏈接目標(biāo)地址
查看全部 -
URL傳遞參數(shù)
查看全部 -
模板For循環(huán)
查看全部
舉報