简体   繁体   English

django-paypal信号不触发

[英]django-paypal signals not firing

I have tried for hours to get my signals to work with django-paypal. 我已经尝试了几个小时才能让我的信号与django-paypal一起工作。

Here is my signals.py (which is imported in my urls.py): 这是我的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"

When I use PayPal's IPN simulator, I know the transaction works because I can go into the database, look at the paypal_ipn table and see the transaction entered just fine, so the signals SHOULD be working. 当我使用PayPal的IPN模拟器时,我知道交易有效,因为我可以进入数据库,查看paypal_ipn表,看到交易输入正常,因此信号应该可以正常工作。

I have also tried both dcramer's and johnboxall's versions of django-paypal, but still no joy. 我也尝试过dcrago和johnboxall两种版本的django-paypal,但仍然没有任何乐趣。

I'm out of ideas, I've put hours into researching and trying to figure this thing out. 我没有想法,我花了很多时间研究并试图弄清楚这件事。 Thanks in advance guys. 在此先感谢大家。

See for errors/warnings in payment transaction. 请参阅以了解付款交易中的错误/警告。 Signal payment_was_successful fired only when there is no flags on transaction, even if flags wasn't critical at all (fe if your settings.PAYPAL_RECEIVER_EMAIL != transaction reciever email). 仅当交易上没有任何标志时才发出payment_was_successful信号,即使标志根本不是至关重要的(如果您的settings.PAYPAL_RECEIVER_EMAIL !=交易接收者电子邮件也是如此)。

You may debug standard.ipn.models.PayPalIPN.send_signals method using pdb at start, is it fired at all? 您可以在开始时使用pdb调试standard.ipn.models.PayPalIPN.send_signals方法,是否会触发? Don't be shine to modify third-party-code for debugging purposes. 请勿出于调试目的修改第三方代码。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM