データベース クエリの結果から辞書を作成するための平均的に一般的なクラス メソッドを次に示します。
def make_schema_dict(self):
schema = [i[2] for i in self.cursor.tables()
if i[2].startswith('tbl_') or i[2].startswith('vw_')]
self.schema = {table: {'scheme': [row.column_name for row
in self.cursor.columns(table)]}
for table in schema}
def last_table_query_as_dict(self, table):
return {'data': [{col: row.__getattribute__(col) for col in self.schema[table]['scheme']
if col != 'RowNum'} for row in self.cursor.fetchall()]}
残念ながら、ご覧のとおり、多くの合併症があります。
たとえば、複数のテーブルがクエリされる場合。結果の辞書を生成するには、いくつかのハックラムダが必要です。
もう少し一般的な方法を考えてもらえますか?