1

以外は、、、、および をauth_user使用したことがありません。これらの各モデルの具体的な用途は何ですか? これらのどれも必要ないというのはよくあることですか? もしそうなら、それらを取り除くための最良の方法は何ですか(ストレートまたはジャンゴレベルで行う)? これらを削除することのマイナス面はありますか?auth_groupauth_group_permissionsauth_permissionauth_user_user_permissionsauth_user_user_permissionsDROP TABLE

4

1 に答える 1

1

Django documentation の User authentication セクションを読むことをお勧めします。認証システムのコンポーネントを次のように説明しています。

  • ユーザー
  • パーミッション: ユーザーが特定のタスクを実行できるかどうかを指定するバイナリ (はい/いいえ) フラグ。
  • グループ: 複数のユーザーにラベルと権限を適用する一般的な方法。

アクセス許可の最も簡単な使い方は、特定のユーザーがDjango 管理サイトで実行できるアクションを制御することです。django.contrib.auth.decorators.permission_requiredパーミッションを使用して、デコレータを使用して独自のビューへのアクセスを制限することもできます。

これをグループと組み合わせると、ユーザーのグループ全体に同じ権限を簡単に割り当てることができます。

あなたが言及した他のデータベーステーブル(auth_group_permissionsなど)には、ユーザーと権限、またはグループと権限の間の関係が保存されています。

認証システムのこれらの部分を直接使用していないかもしれませんが、django.contrib.authそれらに依存する他のコードを使用していることはほぼ確実です。あなたが書いていないアプリを使用している場合 (それが Django の一部であるかどうかにかかわらず)、アプリが作成するデータベース テーブルを削除するのはおそらく悪い考えです。

于 2012-05-30T20:05:17.537 に答える