一.檔案上傳
請求頭contenttype
contenttype指的是請求體的編碼型別,常見的型別共有3種:
這又是乙個常見的 post 資料提交的方式。我們使用表單上傳檔案時,必須讓
檢視部分
defindex(request):
print(request.body) #
原始的請求體資料
print(request.get) #
get請求資料
print(request.post) #
post請求資料
print(request.files) #
上傳的檔案資料
return render(request,"
index.html
")
基於ajax的檔案上傳
模版
檢視
defindex(request):
ifrequest.is_ajax():
print(request.body) #
原始的請求體資料
print(request.get) #
get請求資料
print(request.post) #
post請求資料
print(request.files) #
上傳的檔案資料
檢查瀏覽器的請求頭:
1
content
-
type
: multipart
/
form
-
data; boundary
=
-
-
-
-
webkitformboundaryawl9k5zmitazx3ft
二.分頁器
'''批量匯入資料:
booklist=
for i in range(100):
book.objects.bulk_create(booklist)
''''''
分頁器的使用:
book_list=book.objects.all()
paginator = paginator(book_list, 10)
print("count:",paginator.count) #資料總數
print("num_pages",paginator.num_pages) #總頁數
print("page_range",paginator.page_range) #頁碼的列表
page1=paginator.page(1) #第1頁的page物件
for i in page1: #遍歷第1頁的所有資料物件
print(i)
print(page1.object_list) #第1頁的所有資料
page2=paginator.page(2)
# 拋錯
#page=paginator.page(12) # error:emptypage
#page=paginator.page("z") # error:pagenotaninteger
'''book_list=book.objects.all()
paginator = paginator(book_list, 10)
page = request.get.get('
page
',1)
currentpage=int(page)
try:
(page)
book_list =paginator.page(page)
except
pagenotaninteger:
book_list = paginator.page(1)
except
emptypage:
book_list =paginator.page(paginator.num_pages)
return render(request,"
index.html
",)
index.html
"en">class="
container
">
分頁器
如果頁數多時
defindex(request):
book_list=book.objects.all()
paginator = paginator(book_list, 15)
page = request.get.get('
page
',1)
currentpage=int(page)
#如果頁數十分多時,換另外一種顯示方式
if paginator.num_pages>11:
if currentpage-5<1:
pagerange=range(1,11)
elif currentpage+5>paginator.num_pages:
pagerange=range(currentpage-5,paginator.num_pages+1)
else
: pagerange=range(currentpage-5,currentpage+5)
else
: pagerange=paginator.page_range
try:
(page)
book_list =paginator.page(page)
except
pagenotaninteger:
book_list = paginator.page(1)
except
emptypage:
book_list =paginator.page(paginator.num_pages)
return render(request,"
index.html
",locals())
django 檔案上傳
檔案上傳 當django處理上傳乙個檔案的時候,檔案資料被放在request.files中。這個文件解釋檔案怎麼樣被儲存在磁碟上或者記憶體中,怎樣定製預設的行為。基本檔案上傳 考慮乙個包含filefield的簡單的表單 from django import forms class uploadfil...
django 檔案上傳
檔案上傳 當django處理上傳乙個檔案的時候,檔案資料被放在request.files中。這個文件解釋檔案怎麼樣被儲存在磁碟上或者記憶體中,怎樣定製預設的行為。基本檔案上傳 考慮乙個包含filefield的簡單的表單 from django import forms class uploadfil...
Django檔案上傳
lang en charset utf 8 titletitle head action home method post enctype multipart form data type file name file type submit value 提交 p form div body htm...