集中数据库访问
schemap的Python项目详细描述
schemapy允许您生成用于集中数据库访问的对象。你 定义api的模式,需要执行的代码,然后 验证部分为您处理。所有的东西都封装在一个 反对。
schemapy依赖于PyDAL进行模式定义,但没有绑定到它。
有关详细信息,请参见documentation。
安装
pip install schemapy
用法
使用pydal:
fromschemapyimportAPI,DAL,Fieldfromdatetimeimportdatetime,timedeltadb=DAL('sqlite:memory')db.define_table('users',Field('name',type='string',required=True),Field('created_on',type='date'))db.define_table('posts',Field('subject',type='string',required=True),Field('author',type='reference users',required=True),Field('created_on',type='date'),Field('content',type='text',required=True))api=API(db)@api.as_action(type='read',request=[Field('begin',type='date',required=True),Field('end',type='date',required=True)],response=db.posts)defselect_posts_by_date(db,req,action):query=(db.posts.created_on>=req.begin)|(db.posts.created_on<=req.end)returndb(query).select()now=datetime.now()result=api.select_posts_by_date(begin=now-timedelta(days=1),end=now)print(list(result))