urls

现在介绍一个功能

比如之后实际生产中存在许多路由,有些路由会有一些规则,看起来就会比较乱

比如下面这种情况

www.zxlinux.com/admin/****www.zxlinux.com/user/****www.zxlinux.com/api/****

我们在写的时候,可以将相似的urls不写到主urls中,而是写道分urls中

举例

我们有两个app,主app是app1,从app是demon2

我们在app1中写的urls

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

urlpatterns = [
	url('api/',include('demon2.urls'),
]

这样就可以直接读取demon2的urls和主urls拼接成新的urls

比如 api/list.html

demon2中的urls写具体的规则

from django.conf.urls import url
from demon2 import  views

urlpatterns = [

	url('list.html', views.list),
	url('add.html', views.add),
	url('update.html', views.update),
	url('delete.html', views.delete),
]

demon2 中写的views函数

from django.shortcuts import render,redirect,HttpResponse
from app1 import models
# Create your views here.

def list(request):
	return HttpResponse('list')
def update(request):
	return HttpResponse('update')
def delete(request):
	return HttpResponse('delete')
def add(request):
	return HttpResponse('add')

我们在浏览器中访问即可看到效果

6-7 urls-LMLPHP

补充

url中获取key

在从的urls中修改add的路由

	url(r'^(?P<num>[0-9]+)/add', views.add),

从(demon2)的views中修改add函数

def add(request,num):
	return HttpResponse(num)

6-7 urls-LMLPHP

注意传进来的num变量的数据类型是str

01-02 04:18