【问题标题】:Django-allauth Custom User Configuration Form troubleDjango-allauth 自定义用户配置表单麻烦
【发布时间】:2013-12-06 04:51:43
【问题描述】:

我正在尝试使用 django-allauth 配置自定义用户,并在新应用自定义表单中创建了以下注册表单

#settings.py
ACCOUNT_SIGNUP_FORM_CLASS = 'custom_forms.SignupForm'

#custom_forms/models.py
from django import forms
from django.contrib.auth import get_user_model

class SignupForm(forms.Form):
    first_name = forms.CharField(max_length=30, label='Voornaam')
    last_name = forms.CharField(max_length=30, label='Achternaam')
    bio= forms.CharField(max_length=500)
    email = forms.EmailField(max_length=254)
    password=forms.CharField(label=("Password"), widget=forms.PasswordInput)
    password_confirm=forms.CharField(widget=forms.PasswordInput)

class Meta:
    model = get_user_model() 

def save(self, user):
    user.first_name = self.cleaned_data['first_name']
    user.last_name = self.cleaned_data['last_name']
    user.bio= self.cleaned_data['bio']
    user.email= self.clean_data['email']

    user.save()

我目前收到以下错误:模块“custom_forms”未定义“SignupForm”类。当我将路径更改为 myapp.custom_forms.SignupForm 时,我得到:导入表单类 toteachhisown.custom_forms 时出错:“没有名为 custom_forms 的模块”。非常感谢任何想法/帮助。

【问题讨论】:

  • 这是准确的代码吗?还是class Meta 的缩进有点偏离?此外,如果您定义model=,则应该使用forms.ModelForm 而不是forms.Form。另外,这篇文章可以给你一些见解:stackoverflow.com/questions/4048618/…
  • 啊,谢谢您,这个问题对您有所帮助。那是我必须在路径中包含模型,例如 custom_forms.models.SignupForm。

标签: django django-forms django-users django-allauth


【解决方案1】:

解决方案是我需要在路径中包含 .models,如下所示:custom_forms.models.SignupForm。

【讨论】:

    猜你喜欢
    • 2018-02-06
    • 2018-01-15
    • 1970-01-01
    • 2012-08-31
    • 1970-01-01
    • 2021-02-17
    • 2021-04-04
    • 2017-10-04
    • 2014-08-11
    相关资源
    最近更新 更多