私には数多くのプロジェクトがあるDjangoアプリケーションがあります。各プロジェクトには多数の予算があり、新しい予算がプロジェクトに追加されるたびに、そのプロジェクトの既存の予算にはversion_number
が1つ増分されます。Python-日付フィールドがオブジェクトのリストから最新の値を持つオブジェクトを取得するにはどうすればよいですか?
budgetInstance = Budget.objects.get(project = project, version_number = 0)
しかし、それは何とかようです:「現在の予算は、そのversion_number
0-ある他の場所のコードで使用するための現在の予算「を取得する」にしようとするときに、私はのようなものをやっている予算でなければなりませんプロジェクトのいくつかはversion_number
が0であるbudgets
の数で終了しましたので、データベース内のいくつかのプロジェクトには現在の予算がいくつかあるようです...
私はバージョン管理がどのように行われているかのロジックを修正するために、に同じversion_number
を割り当てることはできませんが、今のところ私はちょうど最新のデータベース内のプロジェクトごとに
各Budget
オブジェクトは、次のような属性があります。project_id
、version_number
、id
、presentation_date
など
だから私は今、私は彼らのpresentation_date
フィールドでversion_number = 0)
によってフィルタリング時に返されたbudgets
をフィルタリングします。私が理解したように、私はmin()
を使ってこれを行うだろうが、私はこの作業を取得するように見えることはできません...
私は、受け入れ答え、次の試してみました:Find oldest/youngest datetime object in a list、シェルで次のように走った:
mostRecentBudget = min(date for date in budgets.dates if date < now)
しかし、私は言ったTypeError
、得た:
TypeError: 'instancemethod' object is not iterable
なぜこれがあるの?最新のpresentation_date
フィールド値を持つものに対して、Project
のBudgets
のリストを検索するにはどうすればよいですか?
詳細情報を提供する必要があります。 「予算」と「予算」は何ですか?なぜこのクエリを注文するためにdbを使用できないのですか? –