2012-04-13 12 views
-1

私はDjangoで動作しているアプリケーションを持っています。私たちのurls.pyは次のエントリを持っていました -Django urls.pyに問題があります

url(r'^$', 'web.views.index', name='index'), 
url(r'^g$', 'web.views.getpost', name='getpost'), 

url(r'^p$', 'web.views.postarticle', name='postarticle'), 

URLパターンにはうまくいきました。私はそれが与える

http://127.0.0.1:8000/d 

を打ったとき

url(r'^d$', 'web.views.delete', name='delete'), 

url(r'^u$', 'web.views.update', name='update'), 

そしてそれ - - しかし、私は2つのURLパターンを追加した現在のURLを、dは、これらのいずれかと一致しませんでした。

なぜ私はそれが新たに追加されたURLパターンを認識しないのかわかりません。なぜそれが動作していない任意のアイデア?

EDITは:ウェズリーが述べたように、それは示しています

リクエストURL:

^$ [name='index'] 
^g$ [name='getpost'] 
^p$ [name='postarticle'] 

それは、^ Dまたは^ UのURLパターンを表示しません:http://127.0.0.1:8000/d Djangoはこの順で、これらのURLパターンを試してみました。

は、ここに私のurls.py

from django.conf.urls.defaults import patterns, url 
from django.conf import settings 

urlpatterns = patterns('', 
    url(r'^$', 'web.views.index', name='index'), 
    url(r'^g$', 'web.views.getpost', name='getpost'), 

    url(r'^p$', 'web.views.postarticle', name='postarticle'), 
url(r'^d$', 'web.views.delete', name='delete'), 

    url(r'^u$', 'web.views.update', name='update'), 
) 
+3

ウェブサーバーを再起動してください。あなたは不正なpythonプロセスも殺す必要があるかもしれません。 – sdolan

+0

Webサーバーを再起動しましたが、役に立たなくなりました。私は自分のマシンを再起動しました。まだ結果はありません。 – Wiz

+0

'^ d $'行が '現在のURL、d、これらのいずれとも一致しませんでした。 – okm

答えて

1

問題は、あなたが私たちを与えた情報ではないからです。あなたが訪問しようとしているURLのパターンとURLはどちらもOKです。

- >デバッグビューは正確に何を返しますか? DOESはショーです:

リクエストURL:

^ ^$ [name='index'] 
^ ^g$ [name='getpost'] 
^ ^p$ [name='postarticle'] 
^ ^d$ [name='delete'] 
^ ^u$ [name='update'] 

は、おそらくデバッグビューのいずれか、削除URLがリストされていない、それはそれを示しています。http://127.0.0.1:8000/d Djangoはこの順で、これらのURLパターンを試してみましたタイプミスで、またはリクエストURLが少し異なります。それでも問題を理解できない場合は、もう少し詳しい情報をお知らせください!

+0

オリジナルの投稿を更新しました。それを指摘してくれてありがとう。なぜそれが表示されない任意のアイデア? – Wiz

1

問題のコメントに示されているように、問題は失効した.pycファイルでした。この問題は、.pycファイルを削除してサーバーを再起動することで修正されました。

今後この問題を回避するには、devサーバーを起動する前に.pycファイルを削除する必要があります。次のコマンドを使用すると、現在のディレクトリとすべてのサブディレクトリ内のすべてのpycファイルをすばやく削除することができます(findが正しいファイルを返すことを確認してから、それらを削除してください)。

find . -name "*.pyc" #Find all pyc files and list them to console 
find . -name "*.pyc" -exec rm '{}' ';' #Run command rm on each file found 
関連する問題