程序猿阵线联盟-汇总各类技术干货

Django2.0入门到实战 3视图与网址入门

2017-12-27  本文已影响417人  qiubite

1.0 创建视图

上一章运行开发服务器之后我们已经看到了默认的Django欢默认迎界面

现在我们就来写自己的博客页面

1.1 打开文件bloger/views.py 并将下面的Python代码放入其中:

from django.http import HttpResponse
def index(request):
    return HttpResponse("欢迎光临,我的博客首页,qiuyang.data")

1.2 将主项目 urls.py 指向bloger 的 urls.py 模块。

1.2.1 在bloger目录中创建 urls.py 模块

添加如下代码:

from django.urls import path
from bloger import views
urlpatterns = [
    path('', views.index, name='index'),
]

1,2,2在 DjangoProject 的 urls.py中,添加如下代码

from django.contrib import admin
from django.urls import path, include 
urlpatterns = [
    # 这里path首个参数是正则匹配,这里留空,直接响应默认IP端口
    path('', include('bloger.urls')),
    path('admin/', admin.site.urls),
]

现在我们的网址路由模块,和视图模块已经关联好了
下面我们运行开发服务器再次访问,查看自定义的视图,

1.3 官方 path() 函数参数详解

path()函数传递四个参数,需要两个必选: routeview,和两个可选:kwargsname。在这一点上,需要注意一下这些参数的含义

path()参数:route

route是一个包含URL模块的字符串。在处理请求时,Django从第一个模块开始,urlpatterns并在列表中向下,比较所请求的URL和每个模块,直到找到匹配的模块。

Djiango不搜索GET和POST参数或域名。例如,在一个请求中https://www.qiuyang.date/bloger/,URLconf会查找bloger/。在一个请求中https://www.qiuyang.date/bloger/?page=3,URLconf也将被查找bloger/

path()参数:view

当Django找到一个匹配的模式时,它会以一个HttpRequest对象作为第一个参数和路由中的任何“捕获”值作为关键字参数来调用指定的视图函数。我们将举一个例子。

path()参数:kwargs

任意的关键字参数可以在字典中传递给目标视图。我们不打算在教程中使用Django的这个特性。

path()参数:name

命名您的URL可以让您从Django其他地方明确地引用它,特别是在模板中。这个强大的功能使您可以对项目的URL模式进行全局更改,同时只触摸单个文件。

看了这个介绍,你已经基本熟悉Djiango的请求和响应流程了

上一篇下一篇

猜你喜欢

热点阅读