我已经尝试了几个小时让我的信号与django-paypal一起工作。
这是我的signals.py(在我的urls.py中导入):
from django.dispatch import receiver
from paypal.standard.ipn.signals import payment_was_successful, payment_was_flagged
@receiver(payment_was_successful)
def confirm_admin_payment(sender, **kwargs):
print 'SUCCESS: %s' % sender.payer_email
@receiver(payment_was_flagged)
def payment_flagged(sender, **kwargs):
print "FLAGGED: %s" % sender.payer_email
print "signals.py has been imported"
当我使用PayPal的IPN模拟器时,我知道交易有效,因为我可以进入数据库,查看paypal_ipn表并查看输入的交易就好了,所以信号应该正常工作。
我也试过dcramer和johnboxall的django-paypal版本,但仍然没有快乐。
我没有想法,我花了几个小时研究并试图解决这个问题。先谢谢你们。
答案 0 :(得分:0)
查看付款交易中的错误/警告。信号payment_was_successful
仅在事务中没有标志时触发,即使标志根本不重要(例如,如果您的settings.PAYPAL_RECEIVER_EMAIL
!=事务接收者电子邮件)。
您可以在开始时使用pdb调试standard.ipn.models.PayPalIPN.send_signals
方法,它是否会被解雇?不要光顾修改第三方代码以进行调试。