You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django-allauth自定义注册表单first_name被存为元组如何解决

修复方案

错误原因

你在signup方法中给user.first_name赋值的行末尾多了一个多余的逗号,按照Python语法规则,单个值后添加逗号会被自动封装为元组类型,这就是first_name被存储为元组、而无多余逗号的last_name存储正常的根本原因。

修复步骤

找到表单文件*myapp/forms.py*中的signup方法,删除user.first_name赋值行末尾的逗号即可,修改后的代码如下:

def signup(self, request, user):
    user.first_name = self.cleaned_data['first_name']
    user.last_name = self.cleaned_data['last_name']
    user.save()
    return user

修改完成后重启服务,后续新注册用户的first_name就会正常存储为字符串,模板中{{user.first_name}}可正常输出内容。

内容的提问来源于stack exchange,提问作者new_progger_python

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 07:45:04