登录Ubuntu虚拟机,打开终端,进入python虚拟环境,创建django工程,在工程内创建应用,命令如下:workon djangotestdjango-admin startproject djviewcd djviewpython manage.py startapp book
在django工程的settings.py文件,注册book应用,在allowed_hosts添加本机ip地址,同时注释掉中间件'django.middleware.csrf.CsrfViewMiddleware',因为本例中会用到post请求cd djviewvi settings修改部分的settings文件如下:ALLOWED_HOSTS = ['192.168.128.128']# Application definitionINSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'book.apps.BookConfig',]MIDDLEWARE = [ 'django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', # 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware',]
在book应用的views.py文件创建一个视图类cd ../bookvi views.pyviews.py文件如下;from django.shortcuts import renderfrom django.views.generic import Viewfrom django.http import HttpResponse# Create your views here.class index(View): def get(self,request): return HttpResponse('get page') def post(self,request): return HttpResponse('post page')
在book应用创建urls.py文件,并在此文件编写到index类视图的urlvi urls.pyurls.py文件如下;from django.conf.urls import urlfrom . import viewsurlpatterns = [ url(r'^index/', views.index.as_view()),]
在工程的urls.py文件,include到book应用的urlscd ../djviewvi urls.pyurls.py文件如下:from django.conf.urls import url,includefrom django.contrib import adminurlpatterns = [ url(r'^admin/', admin.site.urls), url(r'^book/', include('book.urls')),]
运行django服务器,注意带上ip和端口号,这样就能在同一局域网其他电脑访问cd ..python mange.py runserver 192.168.128.128:8000
在局域网另一台电脑使用POSTMAN通过post请求http://192.168.128.128:8000/book/index/返回:post page注意一定要带上最后的‘/’在get请求中‘/’会自动添加,post不会
使用get请求,返回:get page 类视图测试成功