理想的には、stock
が必要です。 Product
のフィールド その製品で利用可能な数量の数を維持するためのモデル。
誰かが注文すると、別のorder
インスタンスは、Product
の数量の数で作成する必要があります 指定。そのorder
のコールバックが受信された場合にのみ、在庫を減らす必要があります または、支払いを確認するWebhookを受信します。
これにより、商品が実際に販売されるまで、他の顧客が同じ商品を注文するのを防ぐことはできません。
別のアプローチは、顧客がコールバックページに移動したときに在庫を減らし、一定期間内に支払いが受け取られなかった場合に在庫を解放することです。これにはバックグラウンドタスクが必要です。
注: F
を使用する django.models
のオブジェクト インスタンス属性ではなくDB値から在庫を減らすために、在庫を減らします。