2010-12-27 3 views
0

私はDjangoのWebサイトのチュートリアルに従っていますが、私はそれを拡張しようとしています。私はすべてのあなたのアプリを "apps"フォルダに入れるという組織的な仕組みが好きです。私はすべてをつなぎ合わせるためにurls.pyを含める適切な方法を理解しようとしています。ここでDjango - appsフォルダでURLconfsを使用するには?

は私のルートurls.pyです:

from django.conf.urls.defaults import * 
from django.contrib import admin 
admin.autodiscover() 

urlpatterns = patterns('', 
    (r'^polls/', include('apps.polls.urls')), 
    (r'^admin/', include(admin.site.urls)), 
) 

ここでアプリケーション/ポーリング/ urls.pyで私urls.pyです:

from django.conf.urls.defaults import * 

urlpatterns=patterns('polls.views', 
    (r'^polls/$', 'index'), 
    (r'^polls/(?P<poll_id>\d+)/$', 'detail'), 
    (r'^polls/(?P<poll_id>\d+)/results/$', 'results'), 
    (r'^polls/(?P<poll_id>\d+)/vote/$', 'vote'), 
) 

これを行うための正しい方法は何ですか?ありがとう!

答えて

2

あなたは現在、それが設定されている方法... URLがURLconfのルートに気を取られていると思います:

0

あなたのDjangoインスタンスはどのように動作していますか? Apacheに複数のvhostが設定されている場合、/ appsの各Djangoインスタンスには独自のurls.pyがあります。

urlpatterns=patterns('polls.views', 
    (r'^$', 'index'), 
    (r'^(?P<poll_id>\d+)/$', 'detail'), 
    (r'^(?P<poll_id>\d+)/results/$', 'results'), 
    (r'^(?P<poll_id>\d+)/vote/$', 'vote'), 
) 

私は世論調査の一部は

+0

うーん...私はEclipseで1つのdjangoインスタンスを実行しています...私は思います。私は仮想ホストやApacheを持っていません。ちょうどEclipseのDjangoです。 – JPC

0

は、私はそれがこれを行うことによって動作するようになりました投票のために:

http://your.url.here/polls/polls/235/results/ 

これはおそらくあなたが望むものではありません。ルートurls.pyファイルのurlpatternsinclude機能は、ポーリングアプリケーションのurlpatternsのプレフィックスとして"polls/"を指定しています。したがって、polls/urls.pyファイルでは、接頭辞が重複するため、接頭辞"polls/"を再度指定しないでください。

関連する問題