django ValueError:以 10 为基数的 int() 的无效文字:''
Posted
技术标签:
【中文标题】django ValueError:以 10 为基数的 int() 的无效文字:\'\'【英文标题】:django ValueError: invalid literal for int() with base 10: ''django ValueError:以 10 为基数的 int() 的无效文字:'' 【发布时间】:2011-07-17 23:43:56 【问题描述】:我的网站有问题,经常收到此错误。 这是我第一次遇到这种情况,也许有人可以解释为什么?
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,
【问题讨论】:
【参考方案1】:count
是空字符串。您需要补偿count
可能是非整数字符串的可能性。
【讨论】:
感谢您的留言。我会尝试做一个解决方法。【参考方案2】:您需要检查模板中的 URL。 您需要将整数 id 传递给 url user.id 因为 url 需要在模板中具有整数值。 前任。网址:- /polls/user.id/
在模板中首先检查您的获取 id 是否像模板类型 sdhajdhgsjgd user.id kejhksdbjf 中的任何地方一样,然后检查您是否获取整数值。
希望这对其他人有用。
【讨论】:
以上是关于django ValueError:以 10 为基数的 int() 的无效文字:''的主要内容,如果未能解决你的问题,请参考以下文章
Django ORM 迁移在 IntegerField 上给出“ValueError:int() 的无效文字”
Django 引发 ValueError: int() 的无效文字,在 POST 上以 10 为基数
在 Django 的详细视图中使用两个参数时,得到“ValueError:int() 的无效文字,基数为 10:'Trancel'”
Django celery 4 - ValueError: int() 的无效文字,当启动 celery worker 时,基数为 10
Django ValueError: invalid literal for int() with base 10: 'xxx'解决办法