gpt4 book ai didi

python - 创建新用户时出现AttributeError

转载 作者:行者123 更新时间:2023-11-28 22:20:37 27 4
gpt4 key购买 nike

我收到这个错误:

Internal Server Error: /signup/
Traceback (most recent call last):
File "C:\python\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
response = get_response(request)
File "C:\python\lib\site-packages\django\utils\deprecation.py", line 142, in __call__
response = self.process_response(request, response)
File "C:\python\lib\site-packages\django\middleware\clickjacking.py", line 32, in process_response
if response.get('X-Frame-Options') is not None:
AttributeError: 'str' object has no attribute 'get'

当试图渲染这个 View 时:

def signup(request):
if request.method == 'POST':
form = SignUpForm(request.POST)
if form.is_valid():
new_user = form.save(commit=False)
new_user.is_active = False
new_user.save()
current_site = get_current_site(request)
subject = "Activate your DC-Elects account"
message = render_to_string('registration/account_activation_email.html', {
'user': new_user,
'domain': current_site.domain,
'uid': urlsafe_base64_encode(force_bytes(new_user.id)),
'token': account_activation_token.make_token(new_user),
})
new_user.email_user(subject, message)
return reverse('elections:account_activation_sent')
else:
form = SignUpForm()
return render(request, 'registration/signup.html',{
'form': form,
})

错误消息描述性不强,但电子邮件发送时带有正确的链接,所以我很困惑为什么会出现错误。如何防止此错误并正确呈现下一个 View ?

最佳答案

Django 的 View 函数应该返回HttpResponse 对象。 reverse只是一个生成 url 字符串的方法,而不是响应对象,所以这一行:

return reverse('elections:account_activation_sent')

引发错误。

如果你需要重定向使用redirect捷径:

return redirect('elections:account_activation_sent')

关于python - 创建新用户时出现AttributeError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48832773/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com