[踩坑] Django "OverflowError: Python int too large to convert to C long" 错误

转自:https://blog.csdn.net/June7_/article/details/99991680

问题描述

使用Django框架,在使用model操作数据库的时候,出现 Django "OverflowError: Python int too large to convert to C long" 错误。

以下参照https://blog.csdn.net/June7_/article/details/99991680 解决该问题。

注意:该错误出现原因不仅是model数据库操作导致的,可能还有其他原因,这里只针对数据库操作时报的错误。

解决问题

PS:如果不想看流程的,可以直接跳到文章末尾看解决方法。

今天学习Django的时候遇到这个问题,

谷歌,百度了一下,连StackOverflow都没有详细的问题描述和解法,都是和Python解释器相关的问题或者是numpy等等。

就是找不到和Django相关的东西,而且翻看相关错误信息也都是解释器的包的问题,各种系统文件什么的,唯一一处自己写的文件的问题就是return的response,但是这个看不出什么问题啊。QWQ

索性就慢慢看源代码和报错信息试试能不能找到问题和解法。

翻到最底下会发现有这一段:

可以注意到这里面和datetime相关,然后我尝试注释掉 models.py里面的 date相关的那一行,然后重新初始化数据库,结果界面访问正常,所以这里就已经锁定问题源了,就是 date这一行的问题。

这里我一开始写的是DateField,

转到数据库,可以发现这里添加时间是精确时间,即 年-月-日 时-分-秒。因为 DateField是日期项,没法精确到时分秒。所以这里出现溢出错误。将 DateField改为 DateTimeField,重新初始化数据库以后问题就消失了,能够正常访问。

Ok,问题解决!

原文地址:https://www.cnblogs.com/leokale-zz/p/12234197.html

时间: 2024-07-31 07:43:02

[踩坑] Django "OverflowError: Python int too large to convert to C long" 错误的相关文章

python 提示 :OverflowError: Python int too large to convert to C long

一次在使用orm进行联表查询的时候,出现   Python int too large to convert to C long 的问题: 在分析错误之后,在错误最后面提示中有: File "F:\python\python3.6\lib\sqlite3\dbapi2.py", line 64, in convert_date return datetime.date(*map(int, val.split(b"-"))) 在查看我的model.py文件的时候我的模

Python int too large to convert to C long

表字段类型问题 publishDate=models.DateField() 改为 publishDate=models.DateTimeField() DateField是日期项,没法精确到时分秒.所以这里出现溢出错误.将 DateField改为 DateTimeField,重新初始化数据库以后问题就消失了 原文地址:https://www.cnblogs.com/aizhinong/p/12368145.html

C++(MFC)踩坑之旅 ------- 新建项目弹出“发生一个或多个错误”

结束隔离,回公司上班,把在家办公的程序考回公司的电脑,结果出错了,每当我新建项目时,都会弹出"发生一个或多个错误",点确定后回到新建项目的设置上面,折腾了两天时间才解决,以下是我的解决思路和操作方法: 思路:年前的时候公司电脑没问题,年前年后有差别的地方在于:我在家时所写的程序(MFC)是自己新建了属性配置表, 解决方法:用公司电脑新建属性配置表,我的做法是配置表名字跟在家里一样的,并且配置内容也一样. 结果:成功了. 原文地址:https://www.cnblogs.com/chen

<<Python编程:从入门到实践>>踩坑记 Django

<<Python编程:从入门到实践>>踩坑记 Django Django Python 19.1.1.5 模板new_topic 做完书上的步骤后,对主题添加页面经行测试,但是浏览器显示 服务器异常. 个人采用的开发环境是virtual studio code , 测试起来很是难受,因为我配置的debug环境,断点操作没有作用. 经过我不断的测试,才发现我失败的原因是由于之前的误操作,先建立new_pizzas.py后改为new_pizzas.html的,错误就在这里.在我之后新建

nginx + gunicorn + django 2.0 踩坑

部署踩坑 部署踩坑提前准备服务器端准备安装nginx使用uwsgi部署使用gunicorn配置配置nginx配置django中的路径url 提前准备 在本地能够 python(3) manage.py runserver 服务器端准备 安装nginx 为了防止python的某些包没有安装 请先 sudo apt-get install python-dev 然后 sudo apt-get install nginx 使用uwsgi部署 求求你了 别用uwsgi 玩了4个小时 试了不下15种配置方

Python 踩坑之旅进程篇其四一次性踩透 uid euid suid gid egid sgid的坑坑洼洼

目录 1.1 踩坑案例 1.2 填坑解法 1.3 坑位分析 1.4 技术关键字 1.5 坑后思考 下期坑位预告 代码示例支持 平台: Centos 6.3 Python: 2.7.14 代码示例: 菜单 - Python踩坑指南代码示例 1.1 踩坑案例 小明是个服务器管理员, 他从老管理员手里接手了一个非常繁琐的运维工作: 短暂授权root 账号给不同的 team 接口人运行备份任务 该运维任务有几个特点: 任务需且仅需运行在 root 下 root 账号只能短暂授权给各个小组 通过账号管理平

基于Python技术栈的算法落地踩坑

背景介绍 在一些业务场景,我们需要把离线训练好的模型以微服务部署线上,如果是简单的使用sklearn pipeline,可以保存为XML格式的pmml供Java调用,在配置为4 core,8G内存的docker环境可以提供8K左右的高并发,并且这种docker可以快速大规模部署到PaaS云平台,优势相当明显,实际情况是算法人员会基于Python自定义lambda处理数据,而自定义的lambda是很难保存到pmml中的,并且很多公司的算法团队也是要求基于Python技术栈是 落地的. 踩坑过程 算

Python踩坑之旅其一杀不死的Shell子进程

1.1 踩坑案例 踩坑的程序是个常驻的Agent类管理进程, 包括但不限于如下类型的任务在执行: a. 多线程的网络通信包处理 和控制Master节点交互 有固定Listen端口 b. 定期作业任务, 通过subprocess.Pipe执行shell命令 c. etc 发现坑的过程很有意思: a.重启Agent发现Port被占用了 => 立刻想到可能进程没被杀死, 是不是停止脚本出问题 => 排除发现不是, Agent进程确实死亡了 => 通过 netstat -tanop|grep p

Python 踩坑之嵌套函数

这里需要特别注意一下, Python是解释类型的语言. 会允许在定义A函数之前没有定义B函数的情况下,函数A调用函数B. def func1(): print "Hello fun1" fun2() def func2(): print "Hello func2" fun1() 这样做是可以的.但是试想一下, 如果函数2也调用函数1呢? 如下: def func1(): print "Hello fun1" fun2() def func2():