python_arango_ogm.db.pao_queries
1class PAOQueries: 2 AQL_UPSERT_DOC=""" 3 UPSERT {{ {key_attrs} }} 4 INSERT {{ {insert_attrs} }} 5 UPDATE {{ {update_attrs} }} 6 IN @@collection OPTIONS {{ keepNull: false }} 7 RETURN NEW 8 """ 9 10 # INSERT AQL with created_at set: 11 # attrs and keyattrs in format "KEY1:VAL1, KEY2:VAL2..." 12 AQL_INSERT_DOC=""" 13 INSERT {{ {insert_attrs} }} INTO @@collection 14 RETURN NEW 15 """ 16 17 AQL_INSERT_DOCS = """ 18 FOR doc IN @docs 19 INSERT doc INTO @@collection 20 """ 21 22 AQL_REMOVE_BY_ATTRS=""" 23 FOR doc in @@collection 24 {lookup_filter} 25 REMOVE doc IN @@collection 26 """ 27 AQL_QUERY_ALL=""" 28 FOR doc in @@collection 29 SORT {sort_attrs} 30 RETURN doc 31 """ 32 33 AQL_QUERY_BY_ATTRS=""" 34 FOR doc in @@collection 35 {lookup_filter} 36 {sort_by} 37 RETURN doc 38 """ 39 40 # Lookup associated edges: 41 AQL_QUERY_RELATED_EDGES = """ 42 FOR doc IN @@collection 43 {lookup_filter} 44 FOR edge IN @@edge_collection 45 FILTER edge._from == doc._id 46 RETURN edge 47 """ 48 49 # Lookup associated vertices through edges: 50 AQL_QUERY_RELATED_VERTICES = """ 51 FOR doc IN @@collection 52 {lookup_filter} 53 FOR edge IN @@edge_collection 54 FILTER edge._from == doc._id 55 FOR rel_doc IN @@association_collection 56 FILTER rel_doc._id == edge._to 57 RETURN rel_doc 58 """
class
PAOQueries:
2class PAOQueries: 3 AQL_UPSERT_DOC=""" 4 UPSERT {{ {key_attrs} }} 5 INSERT {{ {insert_attrs} }} 6 UPDATE {{ {update_attrs} }} 7 IN @@collection OPTIONS {{ keepNull: false }} 8 RETURN NEW 9 """ 10 11 # INSERT AQL with created_at set: 12 # attrs and keyattrs in format "KEY1:VAL1, KEY2:VAL2..." 13 AQL_INSERT_DOC=""" 14 INSERT {{ {insert_attrs} }} INTO @@collection 15 RETURN NEW 16 """ 17 18 AQL_INSERT_DOCS = """ 19 FOR doc IN @docs 20 INSERT doc INTO @@collection 21 """ 22 23 AQL_REMOVE_BY_ATTRS=""" 24 FOR doc in @@collection 25 {lookup_filter} 26 REMOVE doc IN @@collection 27 """ 28 AQL_QUERY_ALL=""" 29 FOR doc in @@collection 30 SORT {sort_attrs} 31 RETURN doc 32 """ 33 34 AQL_QUERY_BY_ATTRS=""" 35 FOR doc in @@collection 36 {lookup_filter} 37 {sort_by} 38 RETURN doc 39 """ 40 41 # Lookup associated edges: 42 AQL_QUERY_RELATED_EDGES = """ 43 FOR doc IN @@collection 44 {lookup_filter} 45 FOR edge IN @@edge_collection 46 FILTER edge._from == doc._id 47 RETURN edge 48 """ 49 50 # Lookup associated vertices through edges: 51 AQL_QUERY_RELATED_VERTICES = """ 52 FOR doc IN @@collection 53 {lookup_filter} 54 FOR edge IN @@edge_collection 55 FILTER edge._from == doc._id 56 FOR rel_doc IN @@association_collection 57 FILTER rel_doc._id == edge._to 58 RETURN rel_doc 59 """
AQL_UPSERT_DOC =
'\n UPSERT {{ {key_attrs} }}\n INSERT {{ {insert_attrs} }}\n UPDATE {{ {update_attrs} }}\n IN @@collection OPTIONS {{ keepNull: false }}\n RETURN NEW\n '
AQL_REMOVE_BY_ATTRS =
'\n FOR doc in @@collection\n {lookup_filter}\n REMOVE doc IN @@collection\n '