2015-10-17 112 views
1

我最初的问题是models not loaded yet,不知何故,我从stackoverflow得到的信息,django.setup()解决了这个问题。但是,有一次,当我使用django.setup()我得到这个错误:ValueError:无效的文字为int()与基地10与django.setup()

ValueError: invalid literal for int() with base 10 

这是我回溯

Traceback (most recent call last): 
    File "C:/Users/Samson/Documents/searchengine/SearchEngine/Scripts/lens/lens/crawler.py", line 110, in <module> 
    spider.crawl_web() 
    File "C:/Users/Samson/Documents/searchengine/SearchEngine/Scripts/lens/lens/crawler.py", line 66, in crawl_web 
    objListing.save() #save to database 
    File "C:\Python27\Lib\site-packages\django\db\models\base.py", line 591, in save 
    force_update=force_update, update_fields=update_fields) 
    File "C:\Python27\Lib\site-packages\django\db\models\base.py", line 619, in save_base 
    updated = self._save_table(raw, cls, force_insert, force_update, using, update_fields) 
    File "C:\Python27\Lib\site-packages\django\db\models\base.py", line 681, in _save_table 
    forced_update) 
    File "C:\Python27\Lib\site-packages\django\db\models\base.py", line 711, in _do_update 
    filtered = base_qs.filter(pk=pk_val) 
    File "C:\Python27\Lib\site-packages\django\db\models\query.py", line 691, in filter 
    return self._filter_or_exclude(False, *args, **kwargs) 
    File "C:\Python27\Lib\site-packages\django\db\models\query.py", line 709, in _filter_or_exclude 
    clone.query.add_q(Q(*args, **kwargs)) 
    File "C:\Python27\Lib\site-packages\django\db\models\sql\query.py", line 1287, in add_q 
    clause, require_inner = self._add_q(where_part, self.used_aliases) 
    File "C:\Python27\Lib\site-packages\django\db\models\sql\query.py", line 1314, in _add_q 
    current_negated=current_negated, connector=connector) 
    File "C:\Python27\Lib\site-packages\django\db\models\sql\query.py", line 1186, in build_filter 
    condition = self.build_lookup(lookups, col, value) 
    File "C:\Python27\Lib\site-packages\django\db\models\sql\query.py", line 1094, in build_lookup 
    return final_lookup(lhs, rhs) 
    File "C:\Python27\Lib\site-packages\django\db\models\lookups.py", line 82, in __init__ 
    self.rhs = self.get_prep_lookup() 
    File "C:\Python27\Lib\site-packages\django\db\models\lookups.py", line 85, in get_prep_lookup 
    return self.lhs.output_field.get_prep_lookup(self.lookup_name, self.rhs) 
    File "C:\Python27\Lib\site-packages\django\db\models\fields\__init__.py", line 646, in get_prep_lookup 
    return self.get_prep_value(value) 
    File "C:\Python27\Lib\site-packages\django\db\models\fields\__init__.py", line 915, in get_prep_value 
    return int(value) 
ValueError: invalid literal for int() with base 10: '5617c8f4b705960e4c314406' 

Process finished with exit code 1 

感谢

回答

2

这有什么好做django.setup()。错误发生在crawl_web:您尝试使用整数字段保存项目,但将值赋给“5617c8f4b705960e4c314406”,该值不是整数。

+0

那么它很可能是_id字段(它是自动指定的),这是问题。我不知道它为什么被存储在一个整数字段中,请你帮忙 – blitzblade

相关问题