2

私のニーズには、組み込みモデル User では十分ではありません...だから私は自分のモデル UserProfile を持っていて、このモデルを介してサイトで認証を行いたいです (UserProfile は User モデルから継承されず、まったく関係ありません)。

私のモデル:

class UserProfile(models.Model):
    password = models.CharField(max_length = 40)
    email = models.EmailField(max_length = 72, unique = True)

    ## Add this so that you can use request.user.is_authenticated
    def is_authenticated(self): 
        return True

ただし、組み込み認証はモデル User を使用します。

だから私はそれをどのように変更できるかを理解したいので、認証は私のモデル UserProfile をすべての認証機能で使用しますか?? ?

良いチュートリアルは素晴らしいでしょう!

(ビュー、モデル、および認証の段階的)

PS:他のモデルに余分なデータを保存できることは知っていますが、それはしたくありません

4

2 に答える 2

3

これはさらに極端な例ですが、やりたいことができることを示しています。作成者は、認証バックエンドが使用する User モデルを置き換えるだけでなく、Django ORM の代わりに SQLAlchemy も使用します。http://tomforb.es/using-a-custom-sqlalchemy-users-model-with-django

要点は、カスタム User モデルを取得するためにバックエンドauthenticateとメソッドを作成する必要があるということです。get_userパーミッションもサポートしたい場合は、has_perm.

于 2012-04-25T14:01:02.627 に答える
0

私はこの記事を使用しましたが、私にとっては十分に機能しました。あなたにとって役立つことを願っています.

スルタン

于 2012-04-25T13:22:59.900 に答える