1

私は2つのDjangoアプリを呼び出しfrontendて、affiliates次のようにしています:

django/
    manage.py
    frontend/
        __init__.py
        models.py
        views.py
    affiliate/
        __init__.py
        models.py
        views.py

私は人々が 2 つのアカウントを持つことができるようにしたいと考えていdomain.com/signup/ますdomain.com/affilate/signup/

それを整理するのに問題はありませんが、同時に両方のアカウントにログインさせることは可能ですか? アクセスしてページにアクセスするdomain.comと、フロントエンド アカウントで認証され、いずれかのページにアクセスするとdomain.com/affiliate/、アフィリエイト アカウントで認証されます。

次のようなアカウントのモデルがあります。

class Account(models.Model):
    user = models.OneToOneField(User, db_index=True)
    username = models.CharField(max_length=32, db_index=True, unique=True)
    password = models.CharField(max_length=32)
    email = models.CharField(max_length=128, db_index=True, unique=True)

フロントエンド用。

class Affiliate(models.Model):
    user = models.OneToOneField(User, db_index=True)
    username = models.CharField(max_length=32, db_index=True, unique=True)
    password = models.CharField(max_length=32)
    email = models.CharField(max_length=128, db_index=True, unique=True)

アフィリエイト向け。

user = models.OneToOneField(User, db_index=True)フィールドがアフィリエイトアカウントとは異なるフロントエンドアカウントのユーザーセットに関連するように、2つの異なるdjangoユーザーセットを持つことは可能ですか? 両方のアカウントで同じユーザー名を使用できるようにしたいからです。両方がdjangoユーザーの同じプールに浸っている場合、ユーザー名の重複エラーが発生します。ありがとう!

4

2 に答える 2

1

モデルとカスタム プロファイル モデルのOneToOne間の代わりに、代わりにを使用できます。次に、ビューにチェックを入れ、ビューに) を付けます。UserForeignKeyUserAccountif hasattr(user, 'account')Affiliateif hasattr(user, 'affiliate

各ユーザー オブジェクトに対して各タイプのプロファイルを複数許可しないようにしてください。ビューまたはモデルでそれを行うことができます。両方の場所でそれを行うと思います。

于 2013-08-11T00:06:36.940 に答える