请帮我修复urls.py 人们建议这样,但它对我不起作用.....
#urls.py
(r'^/user/(?P<username>)/subject/([\w|\W]+)/$', subject),
#template
{% for subject in subjects %}
<li><a href="/user/{{ user.username }}/subject/{{ subject.name }}">{{ subject.name }}</a> {{ del_form.delete }}</li>
{% endfor %}
#error
PAGE NOT FOUND
Request URL: http://127.0.0.1:8000/user/root/subject/Math%20140
....
....
^/user/(?P<username>)/subject/([\w|\W]+)/$
答案 0 :(得分:7)
正则表达式中有错误。如果您不熟悉,请使用正则表达式构建器:
http://ryanswanson.com/regexp/(Perl)
http://www.pyregex.com/(Python)
我想你想要这样的东西:
^user/(?P<username>.+)/subject/([\w|\W]+)/
但您可能希望将“。+”更改为更具限制性的内容:
^user/(?P<username>[^/]+)/subject/([\w|\W]+)/
另请注意,您可能不希望使用前导斜杠 - 由于Django将初始URL提供给URL调度程序的方式。