Python Django,视图,路由配置,视图函数

 

项目名/urls.py(项目的路由配置):

from django.conf.urls import include, url
from django.contrib import admin


# 配置项目的url路由
urlpatterns = [
    url(r'^admin/', include(admin.site.urls)),   # include包含外部模块资源。(不建议在项目中直接匹配视图函数)
    url(r'^', include('应用名.urls')),     # 包含指定应用中的urls文件(需要手动创建)。 在指定应用中的urls.py中继续匹配时,会先去掉此处匹配成功的字符串内容。
]

# 当上面的url匹配成功后,就不会继续向下匹配了。

应用名/urls.py(应用中的路由配置。需要手动创建该文件):

from django.conf.urls import url
from 应用名 import views   # 导入应用中的视图模块(视图函数都定义在该模块中)


# url路由配置
# 先在项目中匹配url,匹配成功后去掉匹配成功的字符串内容 然后再在应用中继续匹配。
urlpatterns = [
    url(r'^index$', views.index),  # 通过url函数配置url路由 (views模块中的index函数)
    url(r'^index2$', views.index2),  # 必须匹配开头和结尾,否则会匹配到上面的路由
    url(r'^books$', views.show_books), # 显示图书信息
    url(r'^books/(\d+)$', views.detail), # 显示英雄信息
]


# 当上面的url匹配成功后,就不会继续向下匹配了。
# 因此在应用中匹配时,必须严格匹配开头和结尾。

应用名/views.py(视图模块,定义视图函数):

from django.shortcuts import render
from django.http import HttpResponse


# 定义视图函数 (必须传递HttpRequest参数)
# 在项目的urls.py以及应用的urls.py中配置路由  http://127.0.0.1:8000/index
def index(request):
    # 处理请求、响应,和M、T进行交互。
    return HttpResponse('hello python')  # 必须返回响应

Python Django,视图,路由配置,视图函数