私は1つのモデル(sqlalchemyを使用)を持っています。このシナリオのすべての人は、ジョブを1つだけ持つことも、まったく持たないこともできます(ジョブもモデルです)。辞書の配列を取得する必要があります(人が人の中に仕事の巣の仕事の辞書を持っている場合、すべての辞書は1人の人を表します)
[{"name":"Timothy", "age":26},
{"name":"Jack", "age":34, "job":{"type":"programmer, "money":5}},
...
]
現時点では、次のような人物を繰り返し処理します。
for person in session.query(PersonModel).all():
result_person = create_dictionary_for_person()
job = session.query(JobModel).filter(JobModel.person_id == person.id).first()
if job:
result_person['job'] = create_dictionary_for_job()
some_list.append(result_person)
(create_dicti ...は変換するための単純な関数であり、JobModelにはPersonModelに外部キーperson_idがあり、すべてに主キーIDがあります)。
すべての人に対して2つのクエリを回避する方法はありますか?