@@ -33,12 +33,21 @@ endpoints.forEach(function(endpoint) {
33
33
const hasGetOne = method .name === ' get'
34
34
const hasGetMany = method .name === ' get_list'
35
35
const pythonMethodName = generate_method_name (method .name , path)
36
- const sql = convertToPsycopgNamedArguments (formatQuery (method .query ))
37
- const params = extractParamsFromQuery (method .query );
38
- const formattedParams = params .length > 0
39
- // [ "p.categoryId" ] => [ '"categoryId": categoryId' ]
40
- ? ' , { ' + params .map (param => param .substring (2 )).map (param => ` "${ param} ": ${ param} ` ).join (' , ' ) + ' }'
41
- : ' '
36
+
37
+ let queries = []
38
+ if (method .query ) {
39
+ queries .push (method .query )
40
+ }
41
+
42
+ queries = queries .map (query => {
43
+ const sql = convertToPsycopgNamedArguments (formatQuery (query))
44
+ const params = extractParamsFromQuery (query);
45
+ const formattedParams = params .length > 0
46
+ // [ "p.categoryId" ] => [ '"categoryId": categoryId' ]
47
+ ? ' , { ' + params .map (param => param .substring (2 )).map (param => ` "${ param} ": ${ param} ` ).join (' , ' ) + ' }'
48
+ : ' '
49
+ return ({ sql : sql, formattedParams: formattedParams })
50
+ })
42
51
43
52
if (hasGetOne || hasGetMany) {
44
53
% >
@@ -54,11 +63,13 @@ def <%- pythonMethodName %>(<%- paramsFromPath.join(', ') %>):
54
63
try:
55
64
with conn:
56
65
with conn .cursor (cursor_factory = psycopg2 .extras .RealDictCursor ) as cur:
57
- cur .execute (' <%- sql %>' < %- formattedParams % > )
66
+ < % queries .forEach (query => { -% >
67
+ cur .execute (' <%- query.sql %>' < %- query .formattedParams % > )
58
68
result = cur .fetchone ()
59
69
if result is None:
60
70
raise HTTPException (status_code= 404 )
61
71
return result
72
+ < % }) -% >
62
73
finally:
63
74
conn .close ()
64
75
< %
0 commit comments