用Paypal Django付款后发送电子邮件

时间:2014-01-08 04:52:07

标签: python django paypal

我在这里遇到问题而且我不明白为什么我不能让它工作。

我正在尝试用PayPal付款后向商店中的当前登录用户发送电子邮件。

这是我的代码:

views.py

def send_email(**kwargs):

#Sacar el Carrito que necesitamos
user = kwargs.get('instance')
cart = Cart.objects.get(client=user)
cartitems = cart.items.all()

#Llamamos el html
ctx = {'pagesize':'A4', 'cart':cart, 'cartitems':cartitems}
html = render_to_string('frontend/order.html',ctx)

#Configuracion enviando mensaje via GMAIL
to_admin = 'sergiomonge10@gmail.com'
msg = EmailMultiAlternatives(subject='Success Email',to=[to_admin])
msg.attach_alternative(html,'text/html')
msg.send()

payment_was_successful.connect(send_email)
payment_was_flagged.connect(send_email)

但失败是因为它没有用户。我不知道为什么。任何帮助将不胜感激

1 个答案:

答案 0 :(得分:0)

查看doc模型PayPalNVP的字段user是django ForeignKey的{​​{1}},因此,您必须使用使用User

中的signals
paypal.pro

然后进入from paypal.pro.signals import payment_was_successful, payment_was_flagged 函数你只需要:

send_email