モデルを構築しようとしていますが、特定の関係を処理する方法に苦労しています。2 つのオブジェクトがあります。個人、名前、メールアドレスなど、およびスポーツ、名前、場所など
私が持っている関係は、プレーヤーをスポーツにマッピングする別のオブジェクトです。スポーツに固有のプレーヤー情報用の追加フィールドがあります。スポーツのプレーヤーの代理である (オプションの) 人を指定する別の関係が必要です。
プロキシは、指定された人がプレイヤーとして行動できるようにするためのものです (おそらく限られた時間の間)。たとえば、プレーヤー A がサッカーを管理していて、2 週間の休暇を取っているとします。彼らは、通知の送信、ゲームの他のプレイヤーへの通知など、1 人の人物に代わって行動してもらいたいと考えています。
player_id
SQL では、 、sport_id
、および null の可能性がある別のplayer_id
フィールド (および有効期限やその他のフィールド) を持つテーブルがあります。
ただし、Django モデルでこれを指定する方法がわかりません。これが私がこれまでに持っているものです:
"""Indicates people who are registered for a type of event.
They can have a unique nickname for each event, if desired.
In addition, they can select a proxy for them, who can act in
thier behalf for this event."""
nickname = models.CharField(max_length=30)
event_type = models.ForeignKey(EventType, related_name='+')
person = models.ForeignKey(Person, related_name='+')
proxy = models.OneToOneField(Person, related_name='+') # ?????
proxy_expires = models.DateField(null=True, blank=True)
これにより、プロキシが必須フィールドになっているようですが、これは私が望んでいるものではありません。プロキシの制約をオプションとして、スポーツごとに 1 人あたり 1 つのプロキシを使用して、これをモデル化する方法に関する提案。
ありがとう!