把sqlalchemy的result当成struct使用
2008-11-10 13:21:28 来源:WEB开发网在述说下面的编程故事的之前:先把结论写在前面:
结论:
python是动态语言,解释型编程.有什么问题,就到他shell中去试验下,会有找好多问题!前面一篇文章"python:logging注意事项(小心重复记录相同的日志).<----removeHandler"也是这样去解决的!需要dbconn.py可以到"mysql+pickle代替ZODB"文章中去下载dbconn.tar里面有类似类.
#######################编程故事开始了######################
在修改pyton下程序的时候,发现如果把原来的程序改为改变的话,会出现一些特别需求.
原程序描述:使用django操作数据库.
现程序描述:需要改为sqlalchemy操作数据库.
django使用了models.py(对象)来操作数据库.这样每个对象就就拥有了数据库field属性.在程序中可以直接调用这个属性写程序.而我们的要求是用sqlalchemy连接数据库,但是不用sqlalchemy建表(手工建表),所以就不需要写sqlalchemy类型的table语句.
程序有需要使用django模板渲染.其中要求调用models.py给出的对象的属性.调用方法为:adv.title.介绍下:new了一个对象为adv对象,这样可以从数据库中取得记录(id,title,kwd).
程序实现的改变了.就必须也要做到这样:建一个class,包含特定表的属性.从数据库中取出数据,并一一复制给这些属性.django使用才会很方便的使用,程序才能够做到最下的改变.实现程序NewDb.py
问题是:程序中有n张表,就要建立n个class.这是一个很费力的事情.不仅仅如此,还得做测试.我想没有多少人愿意做这样重复的事情.而且功能并没有得到实现.
最开始:我没有明白这个需求.以为可以如下做就可以了:
adv = DbResult( result )#
print adv["title"]
Tags:sqlalchemy result 当成
编辑录入:爽爽 [复制链接] [打 印]更多精彩
赞助商链接