Django-allauth персонализиран формуляр за социална регистрация

всеки. Започвам да работя с django. Когато търся система за удостоверяване, намерих пакет django-allauth. Страхотно е, но имам проблем, когато се опитвам да персонализирам формуляра за социална регистрация, който искам да позволя на потребителя да въведе паролата си по това време на потребителска регистрация и трябва да попълва всеки път, когато се регистрира. Като документ пиша персонализиран формуляр.

class SocialSignupForm(forms.Form):

password1 = forms.CharField(max_length=30, label="Password")
password2 = forms.CharField(max_length=30, label="Password(again)")

def clean_password1(self):
    if ("password1" in self.cleaned_data and "password2" in self.cleaned_data):
        if self.cleaned_data['password1'] != self.cleaned_data['password2']:
            raise forms.ValidationError(_("You must type the same password"
                                          " each time."))
    return self.cleaned_data["password1"]

def signup(self, request, user):
    user.set_password(self.cleaned_data["password1"])
    user.save()

и във файла с настройки сложих

ACCOUNT_AUTHENTICATION_METHOD = "email"
ACCOUNT_UNIQUE_EMAIL = True
ACCOUNT_USERNAME_REQUIRED = True
ACCOUNT_EMAIL_REQUIRED = True
SOCIALACCOUNT_AUTO_SIGNUP = True
SOCIALACCOUNT_QUERY_EMAIL = True
SOCIALACCOUNT_PROVIDERS = {
    'facebook': {
        'SCOPE': ['email', 'publish_stream'],
        'METHOD': 'oauth2'
    }
}
ACCOUNT_ADAPTER = 'myapp.adapter.MyAccountAdapter'
SOCIALACCOUNT_ADAPTER = 'myapp.adapter.MySocialAccountAdapter'
ACCOUNT_SIGNUP_FORM_CLASS = 'myapp.forms.SignupForm'
SOCIALACCOUNT_FORMS =  {'signup': 'myapp.forms.SocialSignupForm'}

но когато се опитам да се свържа със социален доставчик, получих:

init() получи неочакван аргумент за ключова дума 'sociallogin'

някой може да ми предложи как да го оправя


person Lang Thang    schedule 07.10.2014    source източник
comment
моля, добавете обратното проследяване, където получавате грешката.   -  person Dhiraj Thakur    schedule 08.10.2014
comment
Това е проследяване, можете ли да ми помогнете :( evernote.com/shard/s201/sh/90dcd99e-9469-4f7d-ab5c-f5fa78363f86/   -  person Lang Thang    schedule 09.10.2014


Отговори (1)


Току-що отговорих на подобен въпрос тук: https://stackoverflow.com/a/28515254/1016544, така че можете да вземете поглед. Използвам същите настройки като вас, с изключение на това, че не прилагам собствен персонализиран адаптер. Другата съществена разлика е, че заменям функцията clean_password2() вместо clean_password1(), защото не работеше в моя случай.

Ако помага, не забравяйте да го приемете като отговор :)

person Wahib Ul Haq    schedule 14.02.2015