zoukankan      html  css  js  c++  java
  • 2、django路由层

    #前言:对于前后端分离的项目。url的很多作用并不广泛。比如起别名,以及模板层的反向解析等等。

    1、urls.py的文件意思就是告诉django,对于客户端访问的这个链接,应该交给哪一段代码来处理。

    2、基本样式:

     1 # coding:utf-8
     2 from django.contrib import admin
     3 from django.urls import path,re_path
     4 from test_app import views
     5 
     6 urlpatterns = [
     7     path('admin/', admin.site.urls),
     8     path('login/', views.login),
     9     path('extend_index/', views.extend_index),
    10     path('extend_order/', views.extend_order),
    11     path('extend_shopping_list/', views.extend_shopping_list),
    12     path('extend_base/', views.extend_base),
    13     path('add_order/', views.add_order, name='zengjia'),
    14     path('query_order/', views.query_order, name='chaxun'),
    15     re_path(r'del_order/(d+)', views.delorder, name='shanchu'),
    16     re_path(r'edit_order/(d+)', views.edit_order, name='bianji'),

      path:第一个参数代表你访问的链接。第二个参数代表对应的views里面的函数。

      re_path:r的目的是告诉python该字符串中任何字符都不应该转义,所以对于re_path,建议都加上。后面可以随意加正则.

    3、关于路由分发:

      正常一个项目基本上是一个功能或者一个模块一个app。所以基本上不会把所有url都写在全局url里面。

      如下:全局url做一个路由分发,分发给两个app:

    from django.contrib import admin
    from django.urls import path, include, re_path
    from test_app import views
    
    urlpatterns = [
        re_path(r'^$', views.index, name='ShouYe'),
        path('test_app/', include('test_app.urls')),
        path('test_app2/', include('test_app2.urls'))
    
    ]

       然后在后面的app url中写具体数据即可

    # coding:utf-8
    from django.urls import path
    from test_app2 import views
    
    urlpatterns = [
        path('timer/', views.timer),
    ]

       

       

  • 相关阅读:
    实验 4:Open vSwitch 实验——Mininet 中使用 OVS 命令
    实验 2:Mininet 实验——拓扑的命令脚本生成
    软工第一次作业——自我介绍
    博客园美化
    实验 1:Mininet 源码安装和可视化拓扑工具
    软工实践个人总结
    结对编程之学术家族树
    软件工程实践结对编程作业(需求分析与原型设计)
    软件工程实践个人编程作业
    软件工程实践第一次个人作业
  • 原文地址:https://www.cnblogs.com/cbslock/p/12145071.html
Copyright © 2011-2022 走看看