1

Djangoアプリで小さなインベントリアプリを作成しようとしています。手持ちの在庫を(2か所の間ですべて一緒に)見て、購入して在庫に追加し、販売して在庫を減らすことができるようにしたいと思います。売上の追跡は素晴らしいでしょう。全体として、私がやりたいことは約5つあります。場所を追跡するために、倉庫1を1として、2を2としてリストすることを考えていて、WHEREフィールド= 1を照会できましたが、2つの場所に同じ商品がある場合、問題が発生します。また、それにアプローチするための最良の方法もわかりません。ここの投稿を読んで、売り上げを追跡し、フラットデータベースに合計する人もいれば、データベースから削除する人もいますが、それは不一致につながります。これはこれまでの私のmodel.pyであり、ここで暗闇を突き刺して、ガイダンスを探しています。

from django.db import models

class Product(models.Model):
    product_ID = models.IntegerField(primary_key=True)
    name = models.CharField(max_length=100)
    type = (
        ('WHT' , 'White Wine'),
        ('RED' , 'Red Wine'),
        ('SPRT', 'Spirits'),
        ('BR'  , 'Beer'),
    )
    size = (
        ('12' , '12oz'),
        ('16'  , '16oz'),
        ('375' , '375mL'),
        ('750' , '750mL'),
        ('1' , '1L'),
    )
    amount_per_case = models.IntegerField()
    warehouse = (
            (1 , 'One'),
            (2 , 'Two'),
    )
    on_hand = models.IntegerField() 

class Store(models.Model):
    store_ID = models.IntegerField(primary_key=True)
    store_name = models.CharField()
    store_type = (
            ('Supermarket', 'Supermarket'),
            ('Liquor Store', 'Liquor Store'),
    )
    store_address = models.CharField()
    store_phone = models.CharField()
    store_contact = models.CharField()

class Vendor(models.Model):
    vendor_ID = models.IntegerField(primary_key=True)
    vendor_name = models.CharField()
    vendor_address = models.CharField()
    vendor_phone = models.CharField()
    vendor_contact = models.CharField()

class Sale(models.Model):
    sale_date = models.DateField()
    sale_product = models.ForeignKey(Product)
4

1 に答える 1

1

Warehouseモデルを作成し、製品とWarehouseの間に多対多の関係を作成する必要があります。throughオプションを使用して、カウントを格納するWarehouseProductなどの関係の詳細を保持する別のモデルを指定します。ドキュメントのこのセクションと次のセクションを参照してください。

PSあなたは販売を特定の店に関連付けるためにほとんど同じことをすることができます、それはおそらくあなたにも興味があるであろう何かであるように私には思えます。

于 2012-12-08T06:44:09.187 に答える