私は自分の見解でこのクエリを使用しました。
temp2=transaction.objects.filter(user_id=client_obj,Date_of_trans.date()=rec_var1)[0].Trans_Amount
Date_of_transという名前のモデルに存在する日時フィールドをユーザーから受け取った変数と比較する必要がありますが、コードが機能していません...どのクエリを作成する必要がありますか?
私は自分の見解でこのクエリを使用しました。
temp2=transaction.objects.filter(user_id=client_obj,Date_of_trans.date()=rec_var1)[0].Trans_Amount
Date_of_transという名前のモデルに存在する日時フィールドをユーザーから受け取った変数と比較する必要がありますが、コードが機能していません...どのクエリを作成する必要がありますか?
これは基本的にSQLクエリです。だからあなたはそのように考える必要があります。SQLでこれをどのように行うことができますか。つまり、SQLでどのような条件を適用するのでしょうか。日時フィールドを使用して特定の日付のレコードを検索するには、その日の開始から終了までのレコードを確認する必要があります。
これを試して
from datetime import datetime, time
temp2=transaction.objects.filter(user_id=client_obj,Date_of_trans>datetime.combine(rec_var1, time(0,0,0)), Date_of_trans <= datetime.combine(rec_var1, time(23,59,59)) )[0].Trans_Amount
上記のコードは、 rec_var1がdate()オブジェクトであることを考慮して記述されています。
ここでは、1日の始まりから1日の終わりまでのすべてのトランザクションを確認します。これで問題は解決すると思います。
日付と時刻のオブジェクトを組み合わせて、ここで必要な日時オブジェクトを形成するdatetime.combine関数を使用しました。
ありがとう