FishHook
Ок, объясняю. Вам нужно два вида пользователей, которые будут обладать разными правами (если вы хотите использовать систему джанговских прав) и вы хотите иметь возможность в любое время выяснить, что же за пользователь у Вас сейчас послал запрос.Вы заходите в админку, и видите там Группы. Добавляете две группы: продавцы, Покупатели.Теперь каждый из ваших пользователей может быть членом одной из этих групп (или обеих сразу).
Спасибо! Пытаюсь разобраться и реализовать. Но возникают вопросы!
1) Влияет ли предложенный Вами механизм на суперюзера (администратора) или эти вещи никак не взаимосвязаны? Ну то есть, например я создаю две новые группы Покупатели и Продавцы и назначаю им определенные права (разрешения), тогда не следует ли из этого, что мне надо отдельно создавать третью группу Администраторы со своим набором прав? Правильно ли я понимаю, что в коробочном варианте получается, что по умолчанию существует 2 группы пользователей - Суперюзер и Обычные пользователи, когда я добавляю 2 новые группы, то по сути образуются 4 группы - Суперюзер, Обычные, Продавцы и Покупатели или что-то я не так понимаю?
2) И подскажите, пожалуйста, как сделать так, чтобы в админке было видно к какой группе принадлежит пользователь?
3) Такое ощущение, что Ваш вариант не работает на собственной новой модели пользователя NewUser
In : user
Out: <NewUser: fff@mail.ru>
In : user.groups.add(1)
————————————————————-
AttributeError Traceback (most rec
<ipython-input-19-48984d48f1d5> in <module>()
—-> 1 user.groups.add(1)
AttributeError: ‘NewUser’ object has no attribute ‘groups’
Нужно еще добавлять поле в модель пользователя, я думал что группы там наследуются по умолчанию?
4) Посмотрите, пожалуйста, сюда http://www.odmin4eg.ru/2011/django-registration-primer/ Я так понимаю, что предлагают здесь - это может быть одно из решений моей задачи. Тогда чем отличается Ваш вариант от предложенного? Зачем человек нагородил такую кучу кода?
Может все-таки есть вариант без Групп. С ними все как-то выглядит запутанно, ИМХО!