1

私は自分の見解でこのクエリを使用しました。

temp2=transaction.objects.filter(user_id=client_obj,Date_of_trans.date()=rec_var1)[0].Trans_Amount 

Date_of_transという名前のモデルに存在する日時フィールドをユーザーから受け取った変数と比較する必要がありますが、コードが機能していません...どのクエリを作成する必要がありますか?

4

1 に答える 1

0

これは基本的に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関数を使用しました。

ありがとう

于 2012-09-19T19:00:08.397 に答える