1

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]+)/$
4

1 に答える 1

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 ディスパッチャーに送る方法のため、おそらく先頭のスラッシュは必要ないことにも注意してください。

于 2012-07-23T23:40:14.767 に答える