Aestate —— 多样化数据库查询

Documentation License: Apache-2.0

# 介绍

当前仅 MySql8.0 以上测试通过

Aestate Framework 是一款基于Python语言开发的ORM框架,你可以使用多种方式去实现基于对象方式的查询.

比如使用类似django的模式去使用:modelClass.orm.filter(*args, **kwargs)

或者 sqlalchemy 的方式:find().where(**kwargs).group_by(*args)

或者像javahibernate一样:

@SelectAbst()
def find_all_F_where_id_in_and_name_like_order_by_id(self, **kwargs) -> list: ...


@Select("SELECT * FROM demo WHERE id=${id} AND name=${name}")
def find_all_where_id(self, id, name): ...
1
2
3
4
5
6

或者像javamybatis使用 xml

<?xml version="1.0"?>
<aestate
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="aestate  https://gitee.com/aecode/aestate-xml/blob/main/v1/tags.xsd"
        xmlns="aestate">
    <namespace id="demo_table" from="example.tables.demoModels.DemoTable"/>
    <import file="./db.xml" id="database" target="demoDatabase"/>
    <template id="templateField">
        id,name,password,create_time,update_time
        <description>测试模板</description>
    </template>

    <item id="findAllById">
        <select>
            <include from="templateField"/>
        </select>
    </item>

    <description>测试描述</description>
</aestate>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Last Updated: 2/8/2022, 9:50:03 PM