美文网首页
三、网址的对应与委派

三、网址的对应与委派

作者: zhile_doing | 来源:发表于2018-07-10 17:18 被阅读0次
    1. Django的MTV架构
      在说明网址委派的细节之前,我们必须先了解Django运行架构是什么,经常可以听到MVC框架,M即是model,是我们要操作的数据结构,V是view,是显示给用户看的视图,C是control,控制model与view进行交互,数据流动等。在Django中,M表示model,是我们定义的数据结构,T表示templates,模板,Django通过渲染jinja2模板显示前端页面,V表示view,相当于Controller,控制数据在model与templates之间流动。

    2. 网址的对应
      当用户访问某个URL时,后端应用应该能分辨出,应该使用哪一个函数来处理用户的请求。需要在urls.py文件中指定,何种模式的url用哪一个view函数来处理。Django使用URLconf模块来执行该功能,在urls.py中使用正则表达式指定url格式。当我们启用管理员后,urls.py中的内容类似于这样



      在urlpatterns列表中使用url函数来指定一个模式,字符串前导符r表示原始字符串,忽略其中特殊字符的含义。url的第二个参数就是处理该url的视图,此处表示,如果网址匹配admin开头,则以admin模块中的url分配为准

    3. 一个简单的例子
      先来看一个helloworld,在视图函数文件views中编写返回helloworld的函数,并在url文件中添加对应关系



      对应关系



      访问

      在设计网址对应时,需要注意唯一性,最好以 '/' 结尾,如果希望该网址后面没有内容,最后要加$
    4. 使用小括号传递参数
      有时候参数会包含在url中,从url中获取参数也应该是自动化的过程
      在url的parttern中使用小括号包围起来的部分,被匹配到的内容会被当做参数传递到后端,看下面一个例子
      url映射



      视图函数



      访问
    5. 为参数命名
      当传递的参数较多,可以为参数命名来增加可读性,命名的语法如下
      r'article/(?P<param_name>expression)
      将之前的例子添加名称
      映射如下


      函数如果要使用传输的参数,则需要使用我们自己命名的名称

      访问

      可以在view函数中的参数指定默认值,这样当url没有给出值的时候,默认参数就可以生效

      访问


    6. include其他整组pattern设置
      可以设置自己的pattern组,当需要时直接使用include引用即可
      url映射



      编写相应的company函数后访问


    相关文章

      网友评论

          本文标题:三、网址的对应与委派

          本文链接:https://www.haomeiwen.com/subject/efxqpftx.html