DeepModel¶
- class deepfos.element.deepmodel.DeepModel(direct_access: bool = True, pg_dsn: str = None, **kwargs)¶
DeepModel元素
- 参数
direct_access – 是否使用直连模式,默认为True 会结合OPTION.edgedb.dsn是否有值决定是否使用直连模式,如无值,则仍为非直连模式 直连模式下,会使用edgedb-python库直连edgedb server, 否则会使用DeepModel组件API进行操作
pg_dsn – PG连接信息
快速开始
from deepfos.element.deepmodel import DeepModel dm = DeepModel() # 查询数据(返回字典列表) results = dm.query('select User { name, email }') # 查询并转换为 DataFrame df = dm.query_df('select User { name, email }') # 执行写入语句 dm.execute('insert User { name := "Alice", email := "alice@example.com" }') # 带参数的查询 results = dm.query( 'select User { name } filter .email = <str>$email', email='alice@example.com' )
方法
async_check_exist(ele_name[, ele_type, …])异步查询元素是否存在
check_exist(ele_name[, ele_type, folder, …])查询元素是否存在
execute(qls, **kwargs)以事务执行多句ql
get_object(object_name[, raw])获取指定对象名的对象
insert_df(object_name, data[, relation, …])以事务执行基于DataFrame字段信息的批量插入数据
insert_df_pg(object_name, data[, …])以事务直连pg执行基于DataFrame字段信息的批量插入数据
query(ql, **kwargs)执行ql查询语句,得到序列化后的结果
query_df(ql, **kwargs)执行ql查询语句
query_object(ql, **kwargs)执行ql查询语句,得到原始结果返回
start_transaction([flatten])开启事务
update_df(object_name, data[, relation, …])以事务执行基于DataFrame字段信息的批量更新数据
wait_for(attr)异步等待成员变量
with_globals(globals_)临时附加 EdgeDB globals
without_globals(*global_names)临时移除指定的 EdgeDB globals
属性
同步 API 对象
异步API对象
当前 DeepModel 实例绑定的直连客户端
元素信息
元素类型
MainView中的所有对象列表
MainView中的所有对象详情
当前应用及空间下可见对象的结构信息缓存
当前space下所有的系统对象
当前app下所有的用户对象