Django: Как использовать другой класс form_class с django-регистрацией - PullRequest
0 голосов
/ 08 июля 2010

Я хочу django-registration (версия 0.8) , чтобы использовать мою пользовательскую форму вместо стандартной.Тем не менее, я хочу продолжать использовать представление django-регистрации по умолчанию.Как должна выглядеть оставшаяся строка ниже для достижения этого?

(r'^accounts/register'...),

Я пробовал это ниже, но получаю синтаксическую ошибку:

(r'^accounts/register/$', 
         'registration.views.register', 
         {'form_class': 'MyRegistrationForm'}, name='registration_register'),

И когда я пробую этониже я получаю register () принимает как минимум 2 аргумента без ключевых слов (1 дано)

(r'^accounts/register/$',      
    'registration.views.register',             
    {'form_class':'MyRegistrationForm'}),

1 Ответ

2 голосов
/ 08 июля 2010

Глядя на функцию views.register,

def register(request, backend, success_url=None, form_class=None,
             disallowed_url='registration_disallowed',
             template_name='registration/registration_form.html',
             extra_context=None):

, вы видите, что backend является обязательным аргументом.Попробуйте следующее:

url(r'^accounts/register/$', 
         'registration.views.register', 
         {'form_class': MyRegistrationForm,
          'backend':'registration.backends.default.DefaultBackend'},
         name='registration_register'),

обратите внимание, что вам нужно использовать url(r'^...), если вы хотите назвать свой URL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...