1

商品、購入日、価格などを見て、顧客が注文したすべての注文を追跡するシステムを作成しています。

たとえば、ユーザーが複数の製品を購入できるようにしたい場合... (つまり、5、20、323523)。ユーザーがさらに製品を追加できるようにするにはどうすればよいですか?

ここに私が持っているコードがあります:

class PurchaseOrder(models.Model):
    product = models.CharField(max_length=256)
    vendor = models.CharField(max_length=256)
    dollar_amount = models.FloatField()
    purchase_date = models.DateField()
    notes = models.TextField( null=True, blank= True)

どこにでも欲しい

追加ページにいるとき:

http://i.imgur.com/u1pu1Gp.png

複数追加できます。これは外部キー関係になりますか? それを実装するにはどうすればよいですか?

4

2 に答える 2

1

ええ、チュートリアルには、「「投票」の横にある「別の追加」リンクにも注意してください」と書かれています。別のオブジェクトとの ForeignKey 関係を持つすべてのオブジェクトは、これを無料で取得します。

個人的には、ユーザーに外部キーを追加します。ここでの解決策は次のように言っています:

from django.contrib.auth.models import User
...
user = models.ForeignKey(User)

そうすれば、どの製品がどのユーザーに属しているかがわかります。

于 2013-07-31T19:24:22.287 に答える
1

ProductOrder とユーザーの間に ForeginKey 関係を追加する必要があります。

from django.contrib.auth.models import User

class PurchaseOrder(models.Model):
   product = models.CharField(max_length=256)
   vendor = models.CharField(max_length=256)
   dollar_amount = models.FloatField()
   purchase_date = models.DateField()
   notes = models.TextField( null=True, blank= True)
   purchased_by = models.ForeignKey(User)

次に、admin.py にカスタム Admin クラスを追加する必要があります。

class PurchaseAdmin(admin.ModelAdmin):
   list_display = [..., 'purchased_by',...]

購入注文を既存のユーザーに割り当てることができるグループボックスが表示されます。

于 2013-07-31T19:38:45.107 に答える