sqlalchemy 模型改变了怎样同步到数据库。

2016-04-03 16:18:32 +08:00
 ivenlee
http://www.zhihu.com/question/27551008/answer/68916625
在知乎看到这样的回答,请问你们用的是哪一种?
4381 次点击
所在节点    Python
12 条回复
linnchord
2016-04-03 16:23:49 +08:00
一个严肃软件工程项目的一环, 3 。
一个小的手工作坊式或信奉 dirty+quick 的软件项目, 2 。
自己随便捣腾个新项目, 1 。
ivenlee
2016-04-03 17:49:35 +08:00
@linnchord 我也觉得在开发环境 把 table drop 掉是最快的。
janxin
2016-04-03 20:12:53 +08:00
开发环境是 drop 然后 create , flask-script 做个命令挺方便的。

回到线上环境, 3 是比较靠近实际的方案
clino
2016-04-03 20:38:21 +08:00
用过 alembic 感觉很方便,但貌似有时候会出点问题
不行就自己写 sql 了
orvice
2016-04-03 22:06:26 +08:00
开发环境随便搞
显示不是要给 dba 操作么
wklken
2016-04-03 23:17:28 +08:00
alembic 完美解决.....跟 django migration 差不多
Livid
2016-04-03 23:21:06 +08:00
每一个表结构的更改语句 ALTER TABLE ,都用一个文件记录下来,文件名是日期加功能的关键字,比如:

sql/20160401_feature.sql

然后这个文件和代码一起入版本控制。
monkeylyf
2016-04-04 03:07:17 +08:00
alembic
ivenlee
2016-04-04 11:53:23 +08:00
@Livid 说的怎么跟 migration 那么像呢? 类似 alter table drop column 之前一般要备份吗? 前意识总觉得需要先备份一下(最起码备份被改动的表)
ivenlee
2016-04-04 12:34:09 +08:00
@wklken @clino @monkeylyf 好的,谢谢。 我回头了解一下 alembic
Dik1s
2016-04-05 09:24:49 +08:00
flask 有个 migrate
wingyiu
2016-04-05 16:45:49 +08:00
让 alembic 帮你做
或者像 @Livid 那样自己动手

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/268295

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX