В своей функции я читаю данные пользователя из сессии и сохраняю их в словаре.Затем я отправляю его в функцию 'register' из registration.backend, но функция каким-то образом получает его пустым и выдает KeyError.Куда ушли мои данные?Код из функции, вызывающей функцию 'register':
data = request.session['temp_data']
email = data['email']
logging.debug(email)
password1 = data['password1']
userdata = {'email': email, 'password1': password1}
logging.debug(userdata)
backend = request.session['backend']
logging.debug(backend)
user = backend.register(userdata)
И функция регистра (весь источник здесь: http://bitbucket.org/ubernostrum/django-registration/src/tip/registration/backends/default/init.py):
class DefaultBackend(object):
def register(self, request, **kwargs):
logging.debug("backend.register")
logging.debug(kwargs)
username, email, password = kwargs['email'], kwargs['email'], kwargs['password1']
Отладка после их вызова:
2010-07-09 19:24:35,020 DEBUG my@email.com
2010-07-09 19:24:35,020 DEBUG {'password1': u'a', 'email': u'my@email.com'}
2010-07-09 19:24:35,020 DEBUG <registration.backends.default.DefaultBackend object at 0x15c6090>
2010-07-09 19:24:35,021 DEBUG backend.register
2010-07-09 19:24:35,021 DEBUG {}
Почему данные могут отсутствовать?Я что-то не так делаю?
@ edit для Silent-Ghost
register() takes exactly 2 arguments (3 given)
112. backend = request.session['backend']
113. logging.debug(backend)
114. user = backend.register(request, userdata)