Django中app分组

2020-01-09  本文已影响0人  25岁学Python

django中app分组

一.django路由系统app进行分组

1.创建app

2.app内文件简介


推荐Python大牛在线分享技术 扣qun:855408893

领域:web开发,爬虫,数据分析,数据挖掘,人工智能

零基础到项目实战,7天学习上手做项目

3.include用于主路由和分路由连接

主urls,py:

from django.conf.urls import url, include
urlpatterns = [
    url(r'^classes/', include("classes.urls")),
    url(r'^staudent/', include("staudent.urls")),
    url(r'^teachers/', include("teachers.urls")),#app名称.urls
]

分urls.py:

from django.conf.urls import url
from classes import views
urlpatterns = [
    url(r'^get_classes/', views.get_classes) #其域名为/classes/get_classes/
                                                #而不是/get_classes/
]

4.路由的分发

正则表达式匹配

urlrouters:

url(r'^test/(\w+)/(\w+)/', views.test),
url(r'^test1/(?P<id>\w+)/(?P<name>\w+)/', views.test1),

views.py:

def test(request, name, id):
    print(id, name)
    return HttpResponse('test')

def test1(request, name, id):
    print(id, name)
    return HttpResponse('test')

注意:

自定制404notfound的页面:

url(r'^', views.notfound),
views:
def notfound(request);
    return render(request, "404.html")

5.利用正则表达式以及name关键字反向路由

urls.py:

url(r'^login.*?/', views.login, name='xxx'),

login.html:

<form action="{% url "xxx" %}" method="post">
<input type="text">
</form>

当我们输入url 为loginXXXXXXXXXXXXXX的时候网页上form表单的url会自动变成login
如果url(r'^login11', views.login, name='xxx'),上form表单的url会自动变成login11

上一篇 下一篇

猜你喜欢

热点阅读