Django:未找到参数'('',)'和关键字参数'{}

0 投票
1 回答
2527 浏览
提问于 2025-04-16 23:33

我对Django还算是个新手,虽然已经用了一段时间,但还是经常犯一些很傻的错误。不过这次的错误让我有点摸不着头脑……因为我对这个还不太熟悉,所以不太会解释我的问题,但我试试看……

错误信息是针对模板中的这一部分:

{% url privblog object.id %}

urls.py的摘录:

urlpatterns = patterns('', url(r'^(?P<object_id>\d+)/$', 'privblog.views.privblog_detail', name="privblog"),)

views.py:

from django.shortcuts import render_to_response
from models import PrivBlog
from blog.models import Blog
from django.template import RequestContext

def privblog_detail(request, object_id=None):
    pblog_detail_object = PrivBlog.objects.filter(id=object_id)
    pblog_recent_object = PrivBlog.objects.all()[:5]
    tblog_recent_object = Blog.objects.all()[:5]
    context = {'pblog_detail_object': pblog_detail_object,
        'pblog_recent_object': pblog_recent_object,
        'tblog_recent_object': tblog_recent_object,
        }
    return render_to_response('privblog/privblog_detail.html', RequestContext(request, context))

1 个回答

2

在你的环境中没有叫做 object 的对象:

{% url privblog object.id %}

应该是这样的:

{% url privblog pblog_detail_object.id %}

你可能在这里也遇到了一些麻烦:

return render_to_response('privblog/privblog_detail.html', context, RequestContext(request))

我从来没有那样调用过 render_to_response。

撰写回答