2010-07-08 61 views
0

我想django-registration (version 0.8)使用我的自定義窗體,而不是默認的。但是,我想繼續使用默認的django-registration視圖。下面的其餘部分應該如何實現這一目標?Django:我如何使用不同的form_class與Django註冊

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

我試過低於這個卻得到了一個語法錯誤:

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

,當我嘗試下面這一個我得到註冊()至少需要2個非關鍵字參數(1給出)

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

回答

2

望着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'^...)

+0

只需要更改爲registration.backends.default.DefaultBackend',它的工作。非常感謝! – FunLovinCoder 2010-07-08 18:21:23

+0

感謝您的反饋,我更新了我的答案。 – Alasdair 2010-07-09 10:07:07