我有一个来自 django-registration 的功能,它将激活电子邮件重新发送给给定的收件人。我正在尝试将该功能从接受给定电子邮件的多个用户转换为每封电子邮件仅接受一个用户。但是,AttributeError
当我尝试更改它时它会抛出一个。
def resend_activation(self, email, site): # for multiple emails -- this works
sent = False
users = User.objects.all().filter(email=email)
if users:
for user in users:
registration_profiles = self.all().filter(user=user)
for registration_profile in registration_profiles:
if not registration_profile.activation_key_expired():
registration_profile.send_activation_email(site)
sent = True
return sent
def resend_activation(self, email, site): # for single email -- this does not work
sent = False
user = User.objects.all().filter(email=email)
if user:
registration_profile = self.all().get(user=user)
if not registration_profile.activation_key_expired():
registration_profile.send_activation_email(site)
sent = True
return sent
后一个函数抛出一个AttributeError
,但我无法弄清楚为什么没有for
循环该函数将无法“工作”。我这里的问题似乎是什么?谢谢你。