Как использовать модель CustomUser и OpenID вместе в Django для аутентификации? - PullRequest
2 голосов
/ 08 мая 2011

Я изучаю фреймворк Python Django.Благодаря Сообществу StackOverFlow я узнал, как использовать open-id в django (social_auth, которым я пользуюсь).

с social_auth, процесс входа и выхода довольно прост и практичен.Но я хочу построить дружеские отношения между пользователями, для этого я создал новый класс модели, который расширен с from django.contrib.auth.models import User и добавил контроль, когда новый пользователь создается в auth_table, я создаю нового пользователя в таблице CustomUser. (Это неэффективно, потому чтопараметры, поступающие из open-id, различны для каждого соединения с open-id) Код моей модели здесь

from datetime import datetime
from django.core.exceptions import ObjectDoesNotExist
from django.db import models
from django.contrib.auth.models import User
from django.contrib.auth.models import UserManager
# Create your models here.


class CustomUser(User):
    gender = models.CharField(max_length=50)
    location = models.CharField(max_length=50)
    bio = models.CharField(max_length=50)
    web_pages = models.CharField(max_length=50)
    friends = models.ManyToManyField("self")

И как я могу использовать модель CustomUser и OpenID вместе в Django для аутентификации?

Любая помощь будет оценена.

1 Ответ

2 голосов
/ 09 мая 2011

Способ расширить класс User в Django - предоставить класс профиля пользователя. Смотрите здесь . Затем вы можете просто использовать модель User как всегда и получить экземпляр профиля по требованию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...