各月の商品のベストセラーのトップ 5 を作成したいと思います。
この場合、注釈を使用する必要があると聞きましたが、使用方法がわかりません。
誰か助けてくれませんか??
各月の商品のベストセラーのトップ 5 を作成したいと思います。
この場合、注釈を使用する必要があると聞きましたが、使用方法がわかりません。
誰か助けてくれませんか??
誰かが有用な回答を提供する前に、より多くの情報を提供する必要があります。知っていること、試したこと、達成したいことについて詳しく説明してください。
それまでの間、django の機能について学び、django の集計ドキュメントannotate()
を読んでいくつかの例を確認してください。
注釈を付けることが唯一の方法ではありません。あまり効率的ではないかもしれませんが、集計を使用することもできextra
ます。これは、データベース固有の sql に依存します。このアプローチは App Engine では機能しませんが、SQL 準拠のデータベースでは機能するはずです。
たとえば、Product
モデルとSalesOrder
モデルがあり、SalesOrder
モデルにはそれぞれの項目とその中に項目があるproduct_id
とorder_date
します。
top_products = Product.objects.extra(
select={'num_orders':'select count(product_id) from app_product where app_salesorder.order_date > thirty_days_ago and app_product.id = app_salesorder.product_id'})
.order_by('-num_orders')[:5]