返回函数
from django.http import HttpResponse
def MyView2(request):
return HttpResponse("这是一个视图")
JsonResponse
返回一个字符串
from django.http import JsonResponse
def MyView(request):
content = {
'name':'tom',
'age':18,
}
return JsonResponse(content)
render
返回一个HTML页面
from django.shortcuts import render
def IndexView(request):
return render(request,'index.html')
重定向redirect
跳到一个新的路由地址
from django.shortcuts import redirect
def MyView3(request):
print("重定向")
return redirect('/myview/')
CBV类视图
在类中编写视图功能,并且将传统的get、post判断设置为了类中函数
from django.views import View
class CbvView(View):
def get(self, request):
return HttpResponse('这是类视图中的get方法')
def post(self, request):
return HttpResponse('这是类视图中的post方法')
def put(self, request):
return HttpResponse('这是类视图中的put方法')
def delete(self, request):
return HttpResponse('这是类视图中的delete方法')
静态路由
path方法最开始使用方法比较简单
from django.contrib import admin
urlpatterns = [
path('admin/', admin.site.urls),
]
re_path方法利用了正则表达式长度可以随意
from django.urls import path,re_path
urlpatterns = [
re_path(r'^[a-z]{5}/$',views.IndexView.as_view()),
]
报错:django.db.utils.ProgrammingError: (1146, “Table ‘book.django_session’ doesn’t exist”)
[25/Apr/2022 18:21:32] “GET /admin/ HTTP/1.1” 500 263559
解决方案:这是因为没有创建数据库
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)