0

まず、私がやろうとしていることを説明させてください。ユーザー モデル、ユーザー プロファイル モデル、ジョブ モデルがあります。ユーザーに関連付けられているすべてのジョブを一覧表示できるようにする必要があり、ジョブに関連付けられているユーザーを表示する必要があります。これは私が考えていることです。正しい方向に進んでいるかどうか教えてください。

class Job(models.Model):
    title=models.CharField(max_length=30,blank=False)
    description=models.TextField(blank=False)
     ...........................


class UsersJob(models.Model):
    user=models.OneToOneField('User')
    jobs=models.Foreignkey('Job')

AUTH_PROFILE_MODULE で定義されているように、ジョブをユーザー オブジェクトまたはユーザー プロファイルに接続する方がよいでしょうか。また、私がやろうとしていることは正しい方向に進んでいますか

4

1 に答える 1

1

これは、必要な関係のタイプに完全に依存します。

  • ユーザーごとに 1 つのジョブがある場合は、ジョブまたはユーザーにそのターゲットを指すフィールドを必ず配置してください。
  • 多ジョブ対単一ユーザーの関係がある場合は、Job モデルに外部キーを追加します。
  • 多ジョブ対多ユーザーの関係がある場合は、いずれかに m2m フィールドを追加します。
  • 多くのユーザーと単一のジョブの関係がある場合は、外部キーをユーザー モデルに配置します (各ユーザーには最大 1 つのジョブがあります)。

AUTH_PROFILE_MODULE?

django は User モデルと非常に密接に連携し、Job やその他の関係をクエリする UserProfiles よりも Users のリストにアクセスする可能性が高いため、ほとんどの状況では FK をこの Profile テーブルに向けたくないでしょう。

于 2013-01-29T05:37:23.063 に答える