0

私は Django のチュートリアルに従っており、パート 4 に到達しました。だから私はもう少しいじって、これを思いつきました。

from django.conf.urls.defaults import *
from django.contrib import admin

admin.autodiscover()

urlpatterns = patterns('',
    (r'^admin/(.*)', admin.site.root),
    #(r'^polls/', include('mysite.polls.urls')),
)

これで管理ページにアクセスできますが、ビューへの URL のコメントを外すと (mysite サブフォルダーに別の urls.py があり、管理者は機能しません)、次のエラーが返されます。

Request Method:     GET
Request URL:    http://192.168.0.5:9000/admin/
Exception Type:     TemplateSyntaxError
Exception Value:    

Caught an exception while rendering: Tried vote in module mysite.polls.views. Error was: 'module' object has no attribute 'vote'

Original Traceback (most recent call last):
  File "/usr/local/lib/python2.5/site-packages/django/template/debug.py", line 71, in render_node
    result = node.render(context)
  File "/usr/local/lib/python2.5/site-packages/django/template/defaulttags.py", line 373, in render
    url = reverse(self.view_name, args=args, kwargs=kwargs)
  File "/usr/local/lib/python2.5/site-packages/django/core/urlresolvers.py", line 254, in reverse
    *args, **kwargs)))
  File "/usr/local/lib/python2.5/site-packages/django/core/urlresolvers.py", line 227, in reverse
    possibilities = self.reverse_dict.getlist(lookup_view)
  File "/usr/local/lib/python2.5/site-packages/django/core/urlresolvers.py", line 161, in _get_reverse_dict
    for name in pattern.reverse_dict:
  File "/usr/local/lib/python2.5/site-packages/django/core/urlresolvers.py", line 169, in _get_reverse_dict
    self._reverse_dict.appendlist(pattern.callback, (bits, p_pattern))
  File "/usr/local/lib/python2.5/site-packages/django/core/urlresolvers.py", line 136, in _get_callback
    raise ViewDoesNotExist, "Tried %s in module %s. Error was: %s" % (func_name, mod_name, str(e))
ViewDoesNotExist: Tried vote in module mysite.polls.views. Error was: 'module' object has no attribute 'vote'

Exception Location:     /usr/local/lib/python2.5/site-packages/django/template/debug.py in render_node, line 81
Python Executable:  /usr/bin/python
Python Version:     2.5.1
Python Path:    ['/local/Programming/django/mysite', '/usr/lib/python2.5/site-packages/docutils-0.5-py2.5.egg', '/usr/lib/python2.5/site-packages/Pygments-1.0-py2.5.egg', '/usr/lib/python2.5/site-packages/pytz-2008i-py2.5.egg', '/usr/lib/python2.5/site-packages/Genshi-0.6dev_r999-py2.5-linux-i686.egg', '/usr/lib/python2.5/site-packages/Trac-0.11.3-py2.5.egg', '/usr/local/lib/python2.5/site-packages/setuptools-0.6c8-py2.5.egg', '/usr/local/lib/python2.5/site-packages/numpy-1.3.0-py2.5-linux-i686.egg', '/usr/lib/python25.zip', '/usr/lib/python2.5', '/usr/lib/python2.5/plat-linux2', '/usr/lib/python2.5/lib-tk', '/usr/lib/python2.5/lib-dynload', '/usr/lib/python2.5/site-packages', '/usr/lib/python2.5/site-packages/Numeric', '/usr/lib/python2.5/site-packages/PIL', '/usr/lib/python2.5/site-packages/gtk-2.0', '/usr/local/lib/python2.5/site-packages']
Server time:    Sun, 24 May 2009 19:59:08 -0500

また、管理者の URL がコメントアウトされていても、私のビューは正常に機能します。エラーなし。

Django 1.0.2 final を実行しています。

人々が与えたいと思っている助けに感謝します。

マーク

4

1 に答える 1

1

mysite.polls.urls を確認してください。mysite.polls.views には存在しない、vote というビュー関数を参照する urls.py ファイルの行があるようです。

于 2009-05-25T05:13:49.263 に答える