0

项目根目录中的 urls.py

url(r'^people/',include('profiles.urls'))

配置文件/urls.py

urlpatterns = patterns('profiles.views',
url(r'^me/$','home',name='profile_home'),
url(r'^(?P<user_name>[^/])/$','public_profile',name='user_public_profile'),
url(r'^signup/$','register_user',name='signup')
)

我收到 404 错误,当我为现有用户键入内容时,Django 无法找到 Url,例如/people/alice配置文件主页和注册的其他两种模式工作正常。事实上,这在昨天工作得很好,但现在不行,我找不到问题所在。

错误信息:

Django tried these URL patterns, in this order:
....
....    
^people/ ^me/$ [name='profile_home']
^people/ ^(?P<user_name>[^/])/$ [name='user_public_profile']
^people/ ^signup/$ [name='signup']
4

2 回答 2

2

您的正则表达式仅允许单个字符与用户名匹配。您需要添加一个+

r'^(?P<user_name>[^/]+)/$'
于 2014-03-28T08:27:20.533 回答
1

url 中的正则表达式模式不正确

url(r'^(?P<user_name>[^/])/$','public_profile',name='user_public_profile'),

更改它以使用[\w]+

url(r'^(?P<user_name>[\w]+)/$','public_profile',name='user_public_profile'),
于 2014-03-28T08:27:27.317 回答