Я использую Django 1.2, и я хочу иметь два пользовательских типа (один для компаний и один для консультантов). Я буду или использовать объект в своей модели (что-то как булевская переменная для is_company или is_consultant) или группы Django для различения их - в зависимости от которого легче для этой проблемы. Я предполагаю, что это не была бы большая часть проблемы, если бы я не был общим новичком ;)
Я использую django-регистрацию для своего бэкенда аутентификации, и у меня будет отдельная форма на моей веб-странице для каждого пользовательского типа (компания по сравнению с консультантом). Я не думаю, лучше создавать два различных взглядов, которые почти идентичны для этих двух случаев, таким образом, я задаюсь вопросом, что лучший способ состоит в том, чтобы определять/регистрировать пользователей, которые зарегистрировались как любой из двух типов.
Спасибо за помощь.
Хотите, чтобы пользователь при регистрации выбирал, является ли он консультантом или компанией? Если это так, вы можете создать свою собственную форму, создав подкласс RegistrationForm
, а затем передав новую форму в параметры для django-registration (прочтите документ о том, как это сделать.)
Чтобы создать подкласс формы и добавьте дополнительное поле, вы бы сделали что-то вроде этого:
from registration.forms import RegistrationForm
USER_TYPES = (
('consultant', 'Consultant'),
('company', 'Company'),
)
class MyRegistrationForm(RegistrationForm):
user_type = forms.ChoiceField(choices=USER_TYPES)
С этого момента вы должны поймать сигнал и сделать все, что вам нужно, с данными формы django-registration имеет отличную документацию
Надеюсь, это то, что вы искали для.