AttributeError:'tuple'对象没有属性'encode'(django联系表单)

you*_*ner -1 python forms django attributeerror

我正在为我的 django 项目创建一个联系页面。forms.py 有名称、主题、发件人和消息。这是视图:

def contact(request):
if request.method == 'GET':
    form = ContactForm()
else:
    form = ContactForm(request.POST)
    if form.is_valid():
        name = form.cleaned_data['name']
        sender_email = form.cleaned_data['sender_email']
        subject = form.cleaned_data['subject']
        message = form.cleaned_data['message']

        send_mail(subject, message, sender_email, ['***@gmail.com'])
return render(request, 'contact_us.html', {'form': form})
Run Code Online (Sandbox Code Playgroud)

模板:

<h1>Contact Us</h1>
<form method="POST">
    {%csrf_token%}
    {{form.as_p}}
    <div class="form-actions">
        <button type="submit">Send</button>
    </div>
</form>
Run Code Online (Sandbox Code Playgroud)

单击“发送”后,出现此错误: AttributeError: 'tuple' object has no attribute 'encode' 尽管在过去几天检查了同一类型的其他问题,但我似乎无法弄清楚出了什么问题。我已按照链接 1链接 2中的说明设置 SMTP 服务器(2 种不同的情况),但它给了我同样的错误。我该如何解决这个问题?谢谢你!

you*_*ner 6

如果有人遇到同样的问题,请检查您的 settings.py 文件。它可能有尾随逗号。这对我来说是个问题。