Django初体验(二):Url配置

注:本人使用的Django1.8.3版本进行测试,在Url的配置过程中均采用了NameSpace

一、不同项目之间的配置各自的Url

1、首先需要在项目的Urls中做如下配置,我的App名字叫"boke" 并且使用"namespace"参数防止不同App之间的命名冲突

 

import boke

urlpatterns = [
    url(r'^admin/', include(admin.site.urls)),
    url(r'^boke/',include('boke.urls',namespace='boke')),
]

 

2、以下是App中的Urls做的配置,这样通过例如"http://127.0.0.1:8000/boke/login/index"这样的访问就可以得到相应的View

from django.conf.urls import include, url
from views import *

urlpatterns = [
    url(r'login/register/$',Register,name='Register'),
    url(r'login/index/$',Login,name='Login'),
    url(r'login/send/$',Send),
]

二、{% url %}的配置

本例中应作如下配置,{%url "boke:Login" (可选参数)%} ,不然会在访问页面时出现:Reverse for 'Login' with arguments '()' and keyword arguments '{}' not found. 0 pattern(s) tried: []

参数解释:boke为命名空间名,而Login则是在Urls.py配置中对应某个url的name

三、HttpResponseRedirect的使用

在我们开发项目的时候,有时会用到页面跳转,我们采用HttpReponseRedirect来实现。

首先:我们需要引入HttpReponseRedirect

from django.shortcuts import HttpResponseRedirect

其次,HttpReponseRedirect配合reverse使用,还需要引入reverse

from django.core.urlresolvers  import reverse

最后开始配置使用实现页面跳转

return HttpResponseRedirect(reverse('boke:Login'))

这样就完成了Url设置Namespace参数来实现都Url的配置及其页面如何进行跳转。

 

总结:本篇博客主要针对于采用带Namespace参数的Url应该进行如何配置,希望广大博友勿喷,多多指点。

 

你可能感兴趣的:(Django初体验(二):Url配置)