1
我有一个django注册函数,它将激活电子邮件重新发送给给定的收件人。我试图将接收多个用户的函数转换为每个电子邮件只有一个用户。然而,当我尝试改变它时,它会抛出一个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
循环。这里似乎是我的问题?谢谢。