Django url 问题

比如下面的设置是错误的,http://localhost:8000/user/userlist/ 永远访问不了访问 userlist页面,因为它其实包含于第二条,所以程序总是会执行第二条,而且第二条url需要参数,这里又没有名叫userlist的user

 

urlpatterns = patterns('',
  
    url(r'^$', views.hello, name='hello'),
    url(r'^(?P<username>\w+)$', views.articlepage, name='articlepage'),
    url(r'^userlist/$', views.userlist, name='userlist'),
    
    

)

 

解决方法 一  交换位置

访问路径不用变化,但万一有用户起名叫userlist就bug了

 

urlpatterns = patterns('',
  
    url(r'^$', views.hello, name='hello'),
    url(r'^userlist/$', views.userlist, name='userlist'),
    url(r'^(?P<username>\w+)$', views.articlepage, name='articlepage'),
    
    
    

)

 

 

 

 

 解决办法二  让有冲突的url分层

访问user的路径多了一层userlist

urlpatterns = patterns('',
  
    url(r'^$', views.hello, name='hello'),
    url(r'^userlist/(?P<username>\w+)$', views.articlepage, name='articlepage'),
    url(r'^userlist/$', views.userlist, name='userlist'),
   

)

 

 

终于找到原因了

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值