1、创建视图模块
1)创建静态内容视图:在项目的mysite文件夹中创建一个views.py的文件,作为视图模块。然后编写一个简单的视图脚本
from django.http import HttpResponse
def hello(request):
return HttpResponse("hello world!")
2)创建动态内容的视图:每次请求时内容都不一样,如下面的时间函数
from django.http import HttpResponse import datetime def hello(request): return HttpResponse("hello world!") def index(request): return HttpResponse("index page!") def new_time(request): time = datetime.datetime.now() html = "<html><body>It is now %s.</body></html>" % time return HttpResponse(time)
2、配置路由
1)配置访问试图的路由:
a、path设置路由:打开mysite文件夹中的urls.py文件,添加一条访问hello试图的路由
from django.contrib import admin
from django.urls import path
from mysite.views import hello
urlpatterns = [
path('admin/', admin.site.urls),
path('hello/', hello)
]
b、url设置路由:打开mysite文件夹中的urls.py文件,添加一条访问hello试图的路由,使用url的方式的特别之处就是可以使用正则表达式。
from django.contrib import admin
from django.urls import path
from mysite.views import hello
from django.conf.urls import url
urlpatterns = [
path('admin/', admin.site.urls),
url('^hello/$', hello)
]
以上两种都可以正常使用,根据实际需要进行选择;访问服务地址:http://127.0.0.1:8000/hello/即可在页面显示:hello world !
重要的一点,如果路由在实际业务中是有规律的变化时,可以用合适的正则表达式来灵活处理,从而减少配置多个有规律的路由。
2、处理服务的根目录时,我们可以通过设置空的路由指向来达到目的。代码示例如下:
a、views.py中的代码如下:
from django.http import HttpResponse
def hello(request):
return HttpResponse("hello world!")
def index(request):
return HttpResponse("index page!")
b、urls.py中的代码如下
from django.contrib import admin
from django.urls import path
from mysite.views import hello, index
from django.conf.urls import url
urlpatterns = [
path('admin/', admin.site.urls),
# path('hello/', hello), # path方式
url('^hello/$', hello), # url方式
path('', index), # path方式
url('^$', index), # url方式
]