170 похожих чатов

Подскажите пожалуйста я могу разделить авторизацию в джанго отдельном от

стандартной? Без использования AbstractUser, или User?
А просто создать отдельную модель для авторизации пользователей только на сайте (не в админку)
class Expert(models.Model):
full_name = models.CharField(max_length=255, blank=True, null=True, verbose_name='Имя, Фамилия')
email = models.EmailField(max_length=255, null=True, blank=True, verbose_name='Email', unique=True)
phone = models.CharField(max_length=255, null=True, blank=True, verbose_name='Номер телефона')
image = ThumbnailerImageField(verbose_name='Фото профиля')
roles = models.ManyToManyField(Role, verbose_name='Роли')

created_at = models.DateField(auto_now_add=True, verbose_name='Дата создания')

def role(self):
return ",\n".join([str(r) for r in self.roles.all()])

def __str__(self):
return f"{self.full_name}"

class Meta:
verbose_name_plural = 'Специалисты'

11 ответов

27 просмотров

по идеи джанго не обязывает делать авторизацию только так

Borys- Автор вопроса

Насколько я правильно понимаю, если делать через AbstractUser, AbstractBaseUser и пользователь будет логинится на сайте, то это будет же значить что он как бы и в админку попал?

не знаю, я не большой эксперт джанго

Borys- Автор вопроса

В гугле одни примеры по изменению стандартной модели авторизации для админа, может подскажете где можно поискать примеры создания подобной функциональности с нуля? В кратце: 1. Есть админка (стандартные набор Users, Groups) 2. Добавил отдельную модель Experts, там я хочу заводить с админки новых пользователей у которых на фронте будет личный кабинет (т.е. поля такие как мыло пароль и т д должны быть в этой новой модели) 3. На сайте пользователю доступна только авторизация, т.е идентифицировать должно добавленных специалистов по email адресу.

какой тип авторизации планируешь использовать?

Borys- Автор вопроса

через email и пароль

тоесть, пользователь вводит имейл и пароль, и если всё ок - его пускает на сайт, да?

Borys- Автор вопроса

Да

получается тебе нужно как-то сравнить введённые данные и те данные которые есть в базе данных не знаю как это лучше всего делать в джанго, но, по идеи выглядит так есть модель у которой есть поля имейл и пароль на эндпоинт приходит запрос, в теле которого есть данные для авторизации дальше нужно написать метод который будет идти в базу, брать нужного юзера и сравнивать данные

тогда чем не угодили реализации “которые везде"?

Borys- Автор вопроса

Если я переопределю стандартную авторизацию допустим с логина на email, то оно же зацепит админку

Похожие вопросы

Обсуждают сегодня

Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
Чтобы перехватить все нажимания буков на форме, надо хук ставить? Пробовал на форме ОнКейДаун, оно ловит клаву если фокус не на компоненте с вводом текста
Serjone
15
лучше скажите, причём тут паскаль?
Alexey Kulakov
36
Всем привет! вывожу на общей стр дочерние ресурсыв каждом ресурсе галерея, и первая фотка должна выводиться на общей [!DocLister? &prepare=photo !]
Alekso
12
А можно вопрос? Мне сегодня сказали что у меня функция (которая просто заполняет массив значениями) не правильная void Full(double * arr, int n) { for (int i = 0; i < n; i...
† C E †
7
День добрый, подскажите пожалуйста, есть ли какой-то способ сказать ребару не компилировать определённое приложение? Всю доку их перечиатл ничего подобного не нашёл
Кирилл
14
Добрый вечер. Хочу чтобы у меня в классе поле было функцией, которая возвращает строку. Делаю так: interface ... TGetOutPath = function : String of object; ... protec...
Kirill Filippenok
12
Народ! Впервые клиенту пришло письмо от РКН, у вас, дескать, есть яндекс метрика, а нигде не написано, что вы ее юзаете. Никто не сталкивался?
Sasha Beep
10
Это может быть все-таки не флудвейт? у меня ботфазер принимает изменения и отображает даже что они изменились, на видео видно что он прислал якобы уже измененное описание, н...
OVERLINK
13
Здравствуйте, хочу сделать HelloWorld в консоли Дельфи, но функция API ничего не выводит, что я делаю не так? program Hello; {$APPTYPE CONSOLE} uses System.SysUtils, WinAPI.Wi...
Sergey Vinogradov
20
Карта сайта