3030ADDITIONAL_FORTUNE_ORM = Fortune (id = 0 , message = 'Additional fortune added at request time.' )
3131ADDITIONAL_FORTUNE_ROW = {'id' : 0 , 'message' : 'Additional fortune added at request time.' }
3232READ_ROW_SQL = 'SELECT "randomnumber", "id" FROM "world" WHERE id = $1'
33- READ_SELECT_ORM = select (World .randomnumber )
33+ READ_SELECT_ORM = select (World .randomnumber ).where (World .id == sqlalchemy .bindparam ("id" ))
34+ READ_FORTUNES_ORM = select (Fortune .id , Fortune .message )
3435WRITE_ROW_SQL = 'UPDATE "world" SET "randomnumber"=$2 WHERE id=$1'
3536
3637template_path = Path (__file__ ).parent / 'templates' / 'fortune.jinja'
@@ -71,7 +72,7 @@ async def single_database_query_orm(request):
7172 """
7273 id_ = randint (1 , 10000 )
7374 async with request .app ['db_session' ]() as sess :
74- num = await sess .scalar (select ( World . randomnumber ). filter_by ( id = id_ ) )
75+ num = await sess .scalar (READ_SELECT_ORM , { "id" : id_ } )
7576 return json_response ({'id' : id_ , 'randomNumber' : num })
7677
7778
@@ -97,7 +98,7 @@ async def multiple_database_queries_orm(request):
9798 result = []
9899 async with request .app ['db_session' ]() as sess :
99100 for id_ in ids :
100- num = await sess .scalar (READ_SELECT_ORM . where ( World . id == id_ ) )
101+ num = await sess .scalar (READ_SELECT_ORM , { "id" : id_ } )
101102 result .append ({'id' : id_ , 'randomNumber' : num })
102103 return json_response (result )
103104
@@ -126,7 +127,7 @@ async def fortunes(request):
126127 Test 4 ORM
127128 """
128129 async with request .app ['db_session' ]() as sess :
129- ret = await sess .execute (select ( Fortune . id , Fortune . message ) )
130+ ret = await sess .execute (READ_FORTUNES_ORM )
130131 fortunes = ret .all ()
131132 fortunes .append (ADDITIONAL_FORTUNE_ORM )
132133 fortunes .sort (key = sort_fortunes_orm )
0 commit comments