Я использую django-socialregistration для управления соединением моего сайта с Facebook.
Когда пользователь нажимает кнопку «Подключиться к Facebook», я могу автоматически создать нового пользователя Django и войти в него. Однако мне также необходимо создать запись UserProfile (мой AUTH_PROFILE_MODULE) для него, котораясодержит информацию об их профиле в Facebook (адрес электронной почты, имя, местоположение).
Я считаю, что мне нужно переопределить представление «setup» социальной регистрации, чтобы я мог делать то, что мне нужно, с UserProfile.Я добавил следующее в файл urls.py моего проекта:
url (r '^ social / setup / $', 'myapp.views.socialreg.pre_setup', name = 'socialregistration_setup'),
Мой пользовательский вид находится здесь "/myapp/views/socialreg.py" и выглядит следующим образом:
from socialregistration.forms import UserForm
def pre_setup(request, template='socialregistration/setup.html',
form_class=UserForm, extra_context=dict()):
# will add UserProfile storage here...
return socialregistration.views.setup(request, template, form_class, extra_context)
Подпись представления социальной регистрации, которую я переопределяю, выглядит следующим образом:
def setup(request, template='socialregistration/setup.html',
form_class=UserForm, extra_context=dict()):
...
Я получаю сообщение об ошибке "ViewDoesNotExist в / social / setup /: Не удалось импортировать myapp.views.socialreg. Ошибка была: модуль с именем socialregistration.views не обнаружен" когда я пробую решение выше.
Приложение социальной регистрации работает нормально, когда я не пытаюсь переопределить представление, поэтому оно, вероятно, правильно установлено в пакетах сайта.Кто-нибудь знает, что я делаю не так?