したがって、sqlalchemy を使用して学習します。
インスタンスがあり、値を取得する必要があります。その値が存在する場合は、それを返します。そうでない場合は、計算して返します。
必ず誰かが「あなたのやり方は間違っている」と言い、改善に関する意見は一般的に高く評価されます。ただし、私が取り組んでいるものは成長し始めており、インスタンスを更新したいときにセッションを常に管理するのは問題があるため、明示的にセッションを管理する必要なくこれを行う方法を検討しています。それは私が実際に間違ったことをしていると私に思わせます。
それでは、セッションを明示的に管理しないように以下のメソッドを修正するにはどうすればよいでしょうか?
def method(self, session):
if self.i_needed_this is None:
self.i_needed_this = calculate(calcutron)
session.add(self)
session.commit()
return self.i_needed_this
else:
return self.i_needed_this
おそらく、この質問は「インスタンスをセッション対応にするので、常に明示的に管理しているわけではありません」というタイトルにする必要があります.
編集:どうやら、私が使用しているセッションのインポートは機能しており、それは利用可能であるため、おそらく問題ではないか、sqlalchemy のスキルが向上した場合の将来の問題です。