Где искусство, Джанго-Пайпал сигнализирует
Я использую Django и Django-PayPal, чтобы попытаться настроить платежную систему.
Используя симулятор разработчика IPN, я могу отправлять сообщения на мой сервер для тестирования.
[13/Sep/2015 18:54:08] "POST /paypal/ HTTP/1.1" 200 4
Из симулятора идет пост, проблем нет.
Теперь я хочу получить сигнал огня. Я поместил следующее в один из моих aps models.py, как в документации:
from paypal.standard.models import ST_PP_COMPLETED
from paypal.standard.ipn.signals import valid_ipn_received
def show_me_the_money(sender, **kwargs):
print "Hello"
ipn_obj = sender
if ipn_obj.payment_status == ST_PP_COMPLETED:
# Undertake some action depending upon `ipn_obj`.
if ipn_obj.custom == "Upgrade all users!":
Users.objects.update(paid=True)
else:
#...
valid_ipn_received.connect(show_me_the_money)
Но я никогда не получаю ответа от сигнала.
Я не имею понятия почему? И я не знаю, как еще это проверить
1 ответ
Я не знаком с этой библиотекой, но вы определяете receiver
а также sender
?
Например, на post_save
сигнал, я бы структурировал это так:
post_save.connect(receiver=my_function, sender=myModel)
Это выглядит как show_me_the_money
деньги являются приемником сигнала, но здесь неясно, что запускает сигнал. Возможно, так и должно быть:
post_save.connect(receiver=my_function, sender=ST_PP_COMPLETED)