0

嗨(对不起我丑陋的英语)我想使用 app-engine-patch 和 google app engine 创建一个简单的博客,并使用 django 通用视图处理博客条目页面。但是当我使用 Django 的通用视图“django.views.generic.list_detail.object_detail”时,我遇到了以下错误:

GenericViewError at /blog/entry/

Generic view must be called with either an object_id or a slug/slug_field.

Request Method:     GET
Request URL:    http://192.168.62.90:8000/blog/entry/
Exception Type:     GenericViewError
Exception Value:    

Generic view must be called with either an object_id or a slug/slug_field.

Exception Location:     <unknown> in ?, line ?
Python Executable:  /usr/bin/python
Python Version:     2.5.2
Python Path:    ['/home/hugh/Desktop/app-engine-patch-sample', '/home/hugh/Desktop/app-engine-patch-sample/common', '/home/hugh/Desktop/app-engine-patch-sample/common/appenginepatch/appenginepatcher/lib', '/home/hugh/Desktop/app-engine-patch-sample/common/zip-packages/django-1.0.2.zip', '/home/hugh/Desktop/app-engine-patch-sample/common/appenginepatch', '/home/hugh/Desktop/google_appengine', '/home/hugh/Desktop/google_appengine/lib/django', '/home/hugh/Desktop/google_appengine/lib/antlr3', '/home/hugh/Desktop/google_appengine/lib/webob', '/home/hugh/Desktop/google_appengine/lib/ipaddr', '/home/hugh/Desktop/google_appengine/lib/yaml/lib', '/home/hugh/Desktop/app-engine-patch-sample', '/usr/lib/python2.5', '/usr/lib/python2.5/plat-linux2', '/usr/lib/python2.5/lib-tk', '/usr/lib/python2.5/lib-dynload', '/usr/local/lib/python2.5/site-packages', '/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/gst-0.10', '/var/lib/python-support/python2.5', '/usr/lib/python2.5/site-packages/gtk-2.0', '/var/lib/python-support/python2.5/gtk-2.0']
Server time:    Thu, 29 Apr 2010 01:54:57 +0000

此链接导致上述问题:http: //192.168.62.90 :8000/blog/entry/?agphdXR1bW4xOTEychALEgpibG9nX2VudHJ5GCYM

我的 urls.py:

from django.conf import settings
from django.conf.urls.defaults import *
from django.views.generic.simple import direct_to_template

from django.views.generic import list_detail
from blog.models import Author, Entry

entry_info = {
    'queryset': Entry.all().order('-pub_date'),
    'template_name': 'index.html',
    'template_object_name': 'entry',
}

urlpatterns = patterns('',
    (r'^media/(?P<path>.*)$', 'django.views.static.serve',
    {'document_root': settings.MEDIA_ROOT, 'show_indexes': True}),
    (r'^$', list_detail.object_list, entry_info),
    (r'^entry/(?P<object_id>.*)$', 
        list_detail.object_detail, 
        {'queryset': Entry.all(), 'template_name': 'sample_test_page.html'}),

)

我不知道这个错误的原因。

4

1 回答 1

0

我相信您的网址在“?”之后缺少“object_id =”。

于 2010-04-29T01:39:16.057 回答