django ValueError:基数为10的int()的文字无效:''

时间:2011-03-18 07:57:52

标签: python django django-views django-templates

我的网站存在问题,经常收到此错误。 这是我第一次碰到这个,也许有人可以解释为什么?

Traceback (most recent call last):

File "/opt/python2.6/lib/python2.6/site-packages/django/core/handlers/base.py", line 92, in get_response
response = callback(request, *callback_args, **callback_kwargs)

File "/www/django_test1/fundedbyme/project/views.py", line 194, in browse
items = Project.objects.filter(categories__slug=cat_name, status='AP')[:count]

File "/opt/python2.6/lib/python2.6/site-packages/django/db/models/query.py", line 151, in __getitem__
stop = int(k.stop)

ValueError: invalid literal for int() with base 10: ''

以下是我的观点。

def browse(request, template_name='projects/browse.html'):
    cat_name = request.GET.get('category', None)
    city_name = request.GET.get('city', None)
    count = request.GET.get('count','12')
    if cat_name is not None:
        items = Project.objects.filter(categories__slug=cat_name, status='AP')[:count]
        category = get_object_or_None(Category, slug=cat_name)
    if city_name is not None:
        items = Project.objects.filter(location_slug=city_name, status='AP')[:count]
        category = Project.objects.filter(location_slug=city_name, status='AP')[:1]
        category = category[0].location
    total = items.count()
    new_count = int(count) + 12

    context = {'items':items,'cat_name':category,'total':total,'new_count':new_count,}

2 个答案:

答案 0 :(得分:3)

count是空字符串。您需要补偿count可能是非整数字符串的可能性。

答案 1 :(得分:0)

您需要检查模板中的网址。 你需要将整数id传递给url {{user.id}},因为url需要在模板中有整数值。 防爆。 url: - / polls / {{user.id}} /

在模板中首先检查你的ID是否与模板类型sdhajdhgsjgd {{user.id}} kejhksdbjf中的任何地方一样,并检查你是否获得整数值。

希望这对其他人有用。