博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Django urls配置方式
阅读量:4993 次
发布时间:2019-06-12

本文共 2301 字,大约阅读时间需要 7 分钟。

例子以上一篇随笔中的blog应用进行.

urls.py默认生成的格式如下:

 

1 """whsweb URL Configuration 2  3 The `urlpatterns` list routes URLs to views. For more information please see: 4     https://docs.djangoproject.com/en/1.8/topics/http/urls/ 5 Examples: 6 Function views 7     1. Add an import:  from my_app import views 8     2. Add a URL to urlpatterns:  url(r'^$', views.home, name='home') 9 Class-based views10     1. Add an import:  from other_app.views import Home11     2. Add a URL to urlpatterns:  url(r'^$', Home.as_view(), name='home')12 Including another URLconf13     1. Add an import:  from blog import urls as blog_urls14     2. Add a URL to urlpatterns:  url(r'^blog/', include(blog_urls))15 """16 from django.conf.urls import include, url17 from django.contrib import admin18 19 urlpatterns = [20     url(r'^admin/', include(admin.site.urls)),21 ]

第一种方式:应用.视图.方法

url(r'^blog/index/$','blog.views.archive')

这个就表示访问url匹配r'^blog/index/$'正则表达式的情况下,网页呈现blog应用下views视图中的archive方法

第二用方式:调用对象

头部导入对象:

from blog.views import archive

url(r'^blog/index/$',archive)

第三种方式:构建patterns赋值

头部记得导入

from django.conf.urls import include, url,patterns 使用patterns方法赋值给urlpatterns对象
urlpatterns =patterns('blog.views'  url(r'^blog/index/$','archive')               )

第四种方式:包含其他url

url(r'^blog/', include('blog.urls')),直接包含blog下的urls配置。

url方法:

def url(regex, view, kwargs=None, name=None, prefix=''):    if isinstance(view, (list, tuple)):        # For include(...) processing.        urlconf_module, app_name, namespace = view        return RegexURLResolver(regex, urlconf_module, kwargs, app_name=app_name, namespace=namespace)    else:        if isinstance(view, six.string_types):            warnings.warn(                'Support for string view arguments to url() is deprecated and '                'will be removed in Django 2.0 (got %s). Pass the callable '                'instead.' % view,                RemovedInDjango20Warning, stacklevel=2            )            if not view:                raise ImproperlyConfigured('Empty URL pattern view name not permitted (for pattern %r)' % regex)            if prefix:                view = prefix + '.' + view        return RegexURLPattern(regex, view, kwargs, name)

可以看到url参数可以采用三种方式配置:1、list 2、tuple 3、string

include方法返回的是tuple

 

转载于:https://www.cnblogs.com/whscfan/p/4524376.html

你可能感兴趣的文章
hdu3371
查看>>
zoj1456 Minimum Transport Cost
查看>>
悬挂else引发的问题
查看>>
js题集29--部分题目在线答题链接地址
查看>>
PCLint 帮助中关于如何获得gcc/g++编译宏定义和头文件搜索目录的方法说明
查看>>
依赖注入模式
查看>>
Backbone.js之Todo源码浅析
查看>>
传统软件企业之殇
查看>>
[bzoj4491]我也不知道题目名字是什么
查看>>
CSS pusle雷达动画实现
查看>>
【问题解决方案】之 Word 公式编辑器 使用小tips
查看>>
模拟凡客导航
查看>>
BZOJ4804: 欧拉心算
查看>>
sublime text 3中安装ctags支持函数跳转,安装convertToUtf8支持中文步骤[工具篇]
查看>>
静态类和单例模式区别
查看>>
团队冲刺第一天
查看>>
二分查找法查找数组元素下表
查看>>
第四章 数据类型
查看>>
php-cgi.exe
查看>>
5.7 Windows常用网络命令
查看>>