Django2.2.1 Python 3.6 urls和views实现Httpresponse
Django2.2.1教程
https://docs.djangoproject.com/en/2.2/intro/tutorial03/
Django中文教程(非2.2.1)
https://www.w3cschool.cn/django
urls.py
用于控制网站的目录
代码
from django.contrib import admin
from django.urls import include,path,re_path
#from django.conf.urls import patterns,path
from WebTest.views import hello,current_datetime,hours_ahead
urlpatterns = [
#path('polls/', include('polls.urls')),
path('admin/', admin.site.urls),
path('hello/', hello,name='hello'),
path('time/', current_datetime,name='current_datetime'),
path('another-time/', current_datetime,name='current_datetime'),
path('time/plus/<int:offset>/', hours_ahead,name='hours_ahead'),
]
views.py
控制视图,将网页以视图方式response到前端。
代码
from django.http import Http404,HttpResponse
import datetime
def hello(request):
return HttpResponse("Hello world")
def current_datetime(request):
now = datetime.datetime.now()
html = "<html><body>It is now %s.</body></html>" % now
return HttpResponse(html)
def hours_ahead(request, offset):
try:
offset = int(offset)
except ValueError:
raise Http404()
dt = datetime.datetime.now() + datetime.timedelta(hours=offset)
html = "<html><body>In %s hour(s), it will be %s.</body></html>" % (offset, dt)
return HttpResponse(html)
settings.py
网站配置文件,说明了网站目录来源文件等信息,对allowedhosts即允许访问网站的用户进行了限制。
ALLOWED_HOSTS = []
这是默认设置,此时如果
python manage.py runserver 0.0.0.0:8000
//或者
python manage.py runserver 0:8000
则会发现访问http://IPv4地址:8000/…报错
需要修改为
ALLOWED_HOSTS = ['*']//表示允许所有用户访问
即可正常访问