SQLAlchemy 做migration的时候 ValueError: too many values to unpack
我在做数据库迁移的时候,使用sqlalchemy,出现一个问题
Traceback (most recent call last):
File "/Volumes/Spano/Dropbox/Dropbox/eclipse-workspace/CAUDLE/src/caudle/caudle/db_migrate.py", line 11, in <module>
script = api.make_update_script_for_model(SQLALCHEMY_DATABASE_URI, SQLALCHEMY_MIGRATE_REPO, tmp_module.meta, db.metadata)
File "<string>", line 2, in make_update_script_for_model
File "/Users/johncaine/anaconda/lib/python2.7/site-packages/migrate/versioning/util/__init__.py", line 89, in catch_known_errors
return f(*a, **kw)
File "<string>", line 2, in make_update_script_for_model
File "/Users/johncaine/anaconda/lib/python2.7/site-packages/migrate/versioning/util/__init__.py", line 159, in with_engine
return f(*a, **kw)
File "/Users/johncaine/anaconda/lib/python2.7/site-packages/migrate/versioning/api.py", line 321, in make_update_script_for_model
engine, oldmodel, model, repository, **opts)
File "/Users/johncaine/anaconda/lib/python2.7/site-packages/migrate/versioning/script/py.py", line 69, in make_update_script_for_model
genmodel.ModelGenerator(diff,engine).genB2AMigration()
File "/Users/johncaine/anaconda/lib/python2.7/site-packages/migrate/versioning/genmodel.py", line 197, in genB2AMigration
for modelCol, databaseCol, modelDecl, databaseDecl in td.columns_different:
ValueError: too many values to unpack
各种google后发现了原因,是在http://stackoverflow.com/questions/20250901/python-sql-alchemy-migrate-valueerror-too-many-values-to-unpack-when-migrat找到的答案,非常感谢stackoverflow的大神,
就是在modle.py中定义数据表的时候使用了Boolean,当我把db.Boolean都换成了db.SmallInteger就解决了问题,非常感谢啊。。。另外,发现在定义的时候Boolean是不分大小写的,所以记得完全更换,就不会影响迁移了,太开心啦~~~
boolean对应的是tinyint,smallinteger对应的是smallint,,,当迁移之后,mysql中的tinyint不会转换为smallint,但是不会影响使用。
使用的sqlalchemy是0.7.9,sqlalchemy-migrate是0.7.2
最后附一个学习sqlalchemy的地址,非常好:http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-iv-database
SQLAlchemy 做migration的时候 ValueError: too many values to unpack的更多相关文章
- ValueError: too many values to unpack (expected 2)
记录下总是码错的地方 for key,value in final_table:#final_table is a dict 然后报错 File "./count_co_Mty_read_n ...
- BUG——Celery ValueError: not enough values to unpack
背景 最近因项目需要,学习任务队列Celery的用法,跟着官网写Demo,出现如题错误,最终在github的Issues里找到解决办法,记录如下. 场景还原 本地环境如下: Windows 7 Pyt ...
- Celery 在Windows下启动worker时出现错误:ValueError: not enough values to unpack (expected 3, got 0)
在公司Linux环境下没有出现问题,在回到家后直接在Windows10下运行出现错误: ValueError: not enough values to unpack (expected 3, got ...
- ValueError: too many values to unpack tensorflow
使用tensorflow 的时候报错: result ,_= sess.run(ops)ValueError: too many values to unpack 其实是ops里面不止一个,返回解压成 ...
- Python: ValueError: too many values to unpack
eg1: >>>a,b=(1,2,3) Traceback (most recent call last): File "<stdin>",line ...
- Opencv ValueError: not enough values to unpack (expected 3, got 2)解决办法
问题背景 有些人在用我去年的毕设运行时(感谢QAQ),报错 Opencv ValueError: not enough values to unpack (expected 3, got 2) 当时就 ...
- Celery ValueError: not enough values to unpack (expected 3, got 0)的解决方案
Celery ValueError: not enough values to unpack (expected 3, got 0)的解决方案 背景 最近因项目需要,学习任务队列Celery的用法,跟 ...
- celery 启用worker ValueError: not enough values to unpack
[2018-01-12 19:08:15,545: INFO/MainProcess] Received task: tasks.add[5d387722-5389-441b-9b01-a619b93 ...
- ValueError: not enough values to unpack (expected 2, got 1)
在python中使用字符串分片时遇到这个问题 [ValueError: not enough values to unpack (expected 2, got 1)] --------------& ...
随机推荐
- 专门为码农定制的14款创意的T裇(T-Shirt)设计
T裇衫是人们在各种场合都可穿着的服装,如在T裇衫上作适当的装饰,即可增添无穷的韵味.通过图案直接反映人类的精神风貌,你可以把日常生活中的兴趣.习惯.喜怒哀乐.嗜好等展露无疑,张扬个性.秀出自我.对于码 ...
- 从IE6到IE11上运行WebGL 3D遇到的各种坑
这篇<基于HTML5的电信网管3D机房监控应用>基于WebGL技术的应用让少同学对HTML5 3D的应用产生了兴趣和信心,但有不少网友私信询问WebGL如何运行在老的IE678910浏览器 ...
- 如何将Mac OS X10.9下的Python2.7升级到最新的Python3.3
Mac OS X10.9默认带了Python2.7,不过现在Python3.3.3出来了,如果想使用最新版本,赶紧升级下吧.基本步骤如下. 第1步:下载Python3.3 下载地址如下: Python ...
- hibernate用注解(annotation)配置sequence
@Id@SequenceGenerator(name="sequenceGenerator",sequenceName="ACTIVITIESSCOPE_SEQ" ...
- 面向对象的JavaScript(一)命名空间
在小项目中对于JavaScript使用,只要写几个function就行了.但在大型项目中,尤其是在开发追求良好的用户体验的网站中,如SNS,就会用到大量的JavaScrpt,有时JavaScript的 ...
- 详细讲解PHP中缓存技术的应用
PHP,一门最近几年兴起的web设计脚本语言,由于它的强大和可伸缩性,近几年来得到长足的发展,php相比传统的asp网站,在速度上有绝对的优势,想mssql转6万条数据php如需要40秒,asp不下2 ...
- 关于SVN删除后的文件不能重新添加(正常途径不行)
在你自己的机器上(即SVN客户端),把“新建test”文件夹标记为删除,然后提交,在删除之前可以备份“新建test”文件夹,提交后,在当前文件夹下更新SVN.然后把你刚刚备份的文件夹重新放到该目录下. ...
- hibernate3 Duplicate class/entity mapping(异常)
hibernate3 Duplicate class/entity mapping(异常) 代码: Configuration config = new Configuration().ad ...
- jQuery中的事件冒泡
1.什么是冒泡 eg: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <he ...
- 两种设计模式(1)==>>“简单工厂”
我们以做一个计算器为例,给大家介绍简单工厂的应用: 效果: 这里我们使用 继承 ,虚方法, 简单工厂的设计模式来完成 首先,我们除了搭好窗体外,我们应该把我们的一些类准备好: 1.计算的父类Calcu ...