背景:基于原项目实验举例: https://my.oschina.net/u/3804957/blog/2990260 在原项目中,新增加名字叫api的app,并创建其urls.py,和views.py,最终实现在myapp中的urls.py引用。
1. 新增加名字叫api的app
python manage.py startapp api
2. api中写入urls.py
from django.contrib import admin
from django.urls import path
from django.conf.urls import url,include
from django.contrib import admin
from api import views
urlpatterns = [
url(r'^list.html', views.list),
url(r'^add.html', views.add),
url(r'^(?P<num>[0-9]+)/update.html',views.update),
url(r'^delete.html', views.delete),
]
3. api中增加views.py
from django.shortcuts import render,HttpResponse,redirect
# Create your views here.
def list(request):
return HttpResponse('<h1>list</h1>')
def add(request):
return HttpResponse('<h1>add</h1>')
def update(request,num):
print ('delete----',num)
return HttpResponse('<h1>update</h1>')
def delete(request):
return HttpResponse('<h1>delete</h1>')
4. 在myapp中urls.py中调用
from django.contrib import admin
from django.urls import path
from django.conf.urls import url,include
from django.contrib import admin
from myapp import views
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^home', views.home),
url(r'^api/', include('api.urls')),
]
5. 浏览器中测试
注意:
其中注意的是update的写法,
url(r'^(?P<num>[0-9]+)/update.html',views.update),
可以从浏览器中传过一个数值式字符串参数,可用于代码中做处理交互。