Сохранение пользовательского класса sign_up и импорт форм allauth в одном файле forms.py, что приводит к ошибкам импорта

from django import forms
from allauth.account.forms import (LoginForm, ChangePasswordForm,
                               ResetPasswordForm, SetPasswordForm, ResetPasswordKeyForm)  
from django.contrib.auth import get_user_model  
from crispy_forms.helper import FormHelper  
from crispy_forms.layout import Layout, Div, Submit, HTML, Button, Row, Field  
from crispy_forms.bootstrap import AppendedText, PrependedText, FormActions  
from django.core.urlresolvers import reverse  


class MySignupForm(forms.Form):
    class Meta:
        model = get_user_model()
        fields = ['email', 'first_name', 'last_name']

    def __init__(self, *args, **kwargs):
        super(MySignupForm, self).__init__(*args, **kwargs)
        self.helper = FormHelper()
        self.fields["email"].widget.input_type = "email"  # ugly hack
        self.helper.form_method = "POST"
        self.helper.form_action = "account_signup"
        self.helper.form_id = "signup_form"
        self.helper.form_class = "signup"
        self.helper.layout = Layout(
            Field('email', placeholder="Enter Email", autofocus=""),
            Field('first_name', placeholder="Enter First Name"),
            Field('last_name', placeholder="Enter Last Name"),
            Field('password1', placeholder="Enter Password"),
            Field('password2', placeholder="Re-enter Password"),
        Submit('sign_up', 'Sign up', css_class="btn-warning"),
        )

    def signup(self, request, user):
        pass


class MyLoginForm(LoginForm):
    remember_me = forms.BooleanField(required=False, initial=False)

    def __init__(self, *args, **kwargs):
        super(MyLoginForm, self).__init__(*args, **kwargs)


class MyPasswordChangeForm(ChangePasswordForm):

    def __init__(self, *args, **kwargs):
        super(MyPasswordChangeForm, self).__init__(*args, **kwargs)

У меня есть такая структура в моем файле app.forms.py, куда я импортирую allauth, встроенный в формы LoginForm ResetPasswordForm и т. Д., И в том же файле я определяю пользовательский класс регистрации.

ловушка для пользовательского класса регистрации: ACCOUNT_SIGNUP_FORM_CLASS = 'allauth_core.forms.MySignupForm'

Я думаю, что я затрагиваю круговую проблему импорта, но не уверен почему?

Файл "/Users/rmahamuni/.virtualenvs/todo/lib/python2.7/site-packages/allauth/urls.py", строка 8, в urlpatterns = [url ('^', include ('allauth.account.urls) '))] Файл "/Users/rmahamuni/.virtualenvs/todo/lib/python2.7/site-packages/django/conf/urls/в этом.py ", строка 52, в файле include urlconf_module = import_module (urlconf_module)" /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/importlib/в этом.py ", строка 37, в import_moduleИмпортировать(имя) Файл "/Users/rmahamuni/.virtualenvs/todo/lib/python2.7/site-packages/allauth/account/urls.py", строка 4, из. Файл импорта представлений "/Users/rmahamuni/.virtualenvs/todo/lib/python2.7/site-packages/allauth/account/views.py", строка 19, из импорта .forms (Файл "/ Users / rmahamuni /. virtualenvs / todo / lib / python2.7 / site-packages / allauth / account / forms.py ", строка 206, в классе BaseSignupForm (_base_signup_form_class ()): файл" /Users/rmahamuni/.virtualenvs/todo/lib/python2 .7 / site-packages / allauth / account / forms.py ", строка 188, в _base_signup_form_class '"% s "'% (fc_module, e)) django.core.exceptions.ImproperlyConfigured: Ошибка при импорте класса формы allauth_core.forms: "невозможно импортировать имя ChangePasswordForm"

Если я сохраню форму регистрации в отдельном файле, я не получу эту проблему.

Я попытался переключить линейку установленных приложений

'allauth',
'allauth.account',
'allauth.socialaccount',
'allauth_core',  <-- app where form is located. 

Что мне здесь не хватает? Может кто-нибудь, пожалуйста, направлять меня? Спасибо

Ответы на вопрос(1)

Ваш ответ на вопрос