Django url管理之include
在Django框架中,提供了非常清晰简洁的url管理方法,在新建一个project之后(此处为myproject),然后在项目中建立一个app(此处为myapp),会看到有如下的目录结构:
一般所熟知的就是在myproject/myproject/urls.py中的urlpatterns列表中来配置 url,每一个列表项就是一个由url函数的调用。例如嘉定我们想在myapp中定义一个主页,然后通过"http://localhost:8000/myapp/homepage"来访问,首先我们在myproject/myapp//view.py中定义一个叫homePage的函数(名字随意,不一定叫这名字):
from django.shortcuts import render
from django.http.response import HttpResponse # Create your views here.
def homePage(request):
return HttpResponse("<h1>This is home page</h1>")
然后在myproject/myproject/urls.py的urlpatterns列表中添加一个url配置:
from django.conf.urls import url
from django.contrib import admin
from myapp.views import homePage#记得导入 urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^myapp/homepage', homePage)
]
然后运行项目,就可以用浏览器通过http://localhost:8000/myapp/homepage来访问。
但假如一个project中有多个app,用以上的方式来管理url可能会造成比较混乱的局面,为了解决这个问题,我们可以用include的方法来配置url,首先我们在自己的app中建立一个urls.py,即myproject/myapp/目录下建立urls.py,然后在其中输入如下内容:
from django.conf.urls import url from myapp.views import homePage urlpatterns = [
url(r'homepage', homePage),
]
然后在项目的urls中包含刚刚app中添加的url配置,我们要做的是在myproject/myproject/urls.py输入如下内容:
from django.conf.urls import url, include#导入了include函数
from django.contrib import admin urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^myapp/', include("myapp.urls"))#包含myapp中的urls
]
然后通过刚刚相同的url(http://localhost:8000/myapp/homepage)访问发现也可以访问了,通过这样的url管理会发现更加整洁,可扩展性更强。
Django url管理之include的更多相关文章
- Django之url上的include,URL命名和反向解析,命名空间
include其他的URLconfs #At any point, your urlpatterns can “include” other URLconf modules. This #esse ...
- django–url
当我们创建了一个项目时,系统为我们创建了一份urlconf, 它可能是这样的: urlpatterns = [ url(r'^admin/', admin.site.urls), ] r'^admin ...
- Django后台管理界面
之前的几篇记录了模板视图.模型等页面展示的相关内容,这篇主要写一下后台admin管理界面的内容. 激活管理界面 Django管理站点完全是可选择的,之前我们是把这些功能给屏蔽掉了.记得上篇中Djang ...
- Django项目实践4 - Django网站管理(后台管理员)
http://blog.csdn.net/pipisorry/article/details/45079751 上篇:Django项目实践3 - Django模型 Introduction 对于某一类 ...
- Django项目实践4 - Django站点管理(后台管理员)
http://blog.csdn.net/pipisorry/article/details/45079751 上篇:Django项目实践3 - Django模型 Introduction 对于某一类 ...
- Django 利用管理器实现文章归档
Django管理器:class Manager 管理器是Django的模型进行数据库查询的接口,Django应用的每个模型都拥有至少一个管理器.默认情况下,Django为每个模型类添加一个名为obje ...
- Django——admin管理工具
一.admin组件使用 Django 提供了基于 web 的管理工具. Django 自动管理工具是 django.contrib 的一部分.你可以在项目的 settings.py 中的 INSTAL ...
- Django URL(路由系统)
Django URL Django 1.11版本 URLconf官方文档 URL配置(URLconf)就像 Django 所支撑网站的目录.它的本质是URL模式以及要为该URL模式调用的视图函数之间的 ...
- Django:URL,Views,Template,Models
准备工作:熟悉Django命令行工具 django-admin.py 是Django的一个用于管理任务的命令行工具,常用的命令整理如下: <1> 创建一个django工程 : django ...
随机推荐
- collections 数据结构模块namedtuple
namedtuple类 导入模块 from collections import namedtuple 使用方法及说明 #pycharm 里按住 ctrl键点击 collections可查看源码 #c ...
- Rancher之Pipeline JAVA demo
Rancher Pipeline Pipeline,简单来说,就是一套运行于Rancher上的工作流框架,将原本独立运行于单个或者多个节点的任务连接起来,实现单个任务难以完成的复杂发布流程. Ranc ...
- 【JQ】jq动态绑定事件.on()、解绑事件off()
#JQ 绑定与解绑事件的方法的历史演变 1. jquery1.4 及之前的版本,由.click() 或 .bind()方法绑定的事件,不能适用脚本创建的新元素:即是说页面加载完成后,再动态创建的DOM ...
- JVM 内存初学 堆(heap)、栈(stack)和方法区(method)
这两天看了一下深入浅出JVM这本书,推荐给高级的java程序员去看,对你了解JAVA的底层和运行机制有比较大的帮助.废话不想讲了.入主题:先了解具体的概念:JAVA的JVM的内存可分为3个区:堆(he ...
- java动态获取上传文件的编码类型
package com.sjfl.main; import java.io.BufferedReader; import java.io.File; import java.io.FileInputS ...
- netty的数据通信之心跳检测
问题1:我们想实现客户端和服务端建立连接之后,5秒钟之后如果没有数据传输就关闭与客户端的连接. 解决办法:在服务端加上下面一条代码 ch.pipeline().addLast(new ReadTime ...
- MY服务器架设
研究了一天,终于弄出来了,进游戏耍了会,感觉不错,下面分享架设步骤给大家 分享端的大大也出了个虚拟机运行需要注意的视频,大家看看吧,我就这样弄架设成功了 链接:链接: http://pan.baidu ...
- Spark常见问题汇总
原文地址:https://my.oschina.net/tearsky/blog/629201 摘要: 1.Operation category READ is not supported in st ...
- StringBuilder类
java.lang.StringBuilder String类代表字符串,他的底层是一个被final修饰的数组,不能改变,字符串是常量,它们的值一旦被创建之后就不能改变,但是字符串缓冲区(String ...
- j2ee应用开发调试工具
j2ee应用程序不能独立运行,需要运行在一个servlet/jsp容器中,常用的servlet/jsp容器如:tomcat,jetty等.在开发调试j2ee程序时,也需要部署在一个指定的容器中.如果每 ...