用单例和动态类在sqlalchemy中做动态表绑定
当我们的数据表需要分库的时候,如果使用了 sqlalchemy 来做 ORM,在做数据表和类关联的时候就很痛苦了,一个类只能和一个表关联。
当然还有一种方法就是修改 model.tablename.name 来解决,但是这个有个问题是只能绑定一次,实例化后修改就无效了。所以我们就需要使用 type 来动态的创建一个类,到这里问题又来了,如果在不同的时候创建了两个相同的类名的时候,程序就会抛出异常。所以类名必须是单例的。整个的实现如下:
当我们的数据表需要分库的时候,如果使用了 sqlalchemy 来做 ORM,在做数据表和类关联的时候就很痛苦了,一个类只能和一个表关联。
当然还有一种方法就是修改 model.tablename.name 来解决,但是这个有个问题是只能绑定一次,实例化后修改就无效了。所以我们就需要使用 type 来动态的创建一个类,到这里问题又来了,如果在不同的时候创建了两个相同的类名的时候,程序就会抛出异常。所以类名必须是单例的。整个的实现如下:
在很早以前,就通过地图 api 抓取的相关的省市区信息,其中有一个字段是 polylines ,里面是一组 gps 的坐标。为了离线来根据 gps 坐标获取省市区的信息,最开始想到的是使用 geohash 来计算出每个区域所包含的hash值,把所有的hash值存下来,这样查询变成了键值查询,如果 geohash精确到第8位,值偏差大概是19米,这个精度已经在我所能够承受的范围内了。
昨天在 windows 上安装了wxpython,然后写了个 hello world
出来,想着在 mac 上看看效果,结果安装一直都不成功,用安装包安装提示找不到安装目标,用 brew 安装引用不成功。找到下面的解决方法
http://supervisord.org
文档 http://supervisord.org/installing.html
1 | # 使用 apt-get 会自动的在 /etc/supervisor 加入配置文件,推荐使用 |
1 | sudo apt-get install libjpeg-dev |