django-paypal:在离开之前处理流量到paypal付款

问题描述:

我没有一个典型的商店,你知道你在卖什么。我在旅途中创建自定义产品(需要填写一对表单),以便人们可以购买,所以在他们离开之前到PayPal付款网站(我使用贝宝标准与django-paypal没有问题)我需要将产品存储在DB,所以如果付款,它会使用发票号码将其关联到IPN。django-paypal:在离开之前处理流量到paypal付款

即使没有按下“立即购买”按钮,我也可以存储用户所做的每种组合,但随后数据库将变得太快。我知道我可以让一个cron进程删除那些没有付款的产品。但真诚的,我对PayPal很陌生,IPN不时地失败,所以我最终可能会收到一个支付的产品,我再也没有DB了,所以退款是唯一的选择,这意味着失去了生意。

任何人有任何想法如何解决这个问题?我唯一能想到的就是操纵django-paypal的表单来调用我自己的视图,存储产品,然后手动将表单发布到paypal。

我自己也有类似的问题。以下是我所遵循的路径:

我创建了一个包含贝宝按钮图片的页面,但该图片仅提供了 最终产品信息到我的网站。此时,我在DB中保存了用户询问 的哪些内容,并使用包含PayPal表单的页面进行回复,并在加载时自动提交。 ie.sth像

<head> 
<script src="{{ STATIC_URL }}js/jquery.js"></script> 
    <script> 
    $(document).ready(function() { 
    $("#paypalform").submit() 
}); 
    </script> 
</head> 

<form id="paypalform" name="_xclick" action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="post"> 
    <input type="hidden" name="cmd" value="_xclick"> 
    <input type="hidden" name="business" value="[email protected]"> 
    <input type="hidden" name="amount" value="0.20"> 
    <input type="hidden" name="custom" value="{{translation.id}}"> 
    <input type="hidden" id="quantity" name="quantity" value="{{translation.cnt_words}}"> 
    <input type="hidden" name="item_name" value="Some Name"> 
<img alt="" border="0" src="https://www.sandbox.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1"> 
</form> 

</script> 

看着django_paypal - 似乎form.render(),让我来代替上述其输出的所有贝宝形式的东西。唯一的问题可能是我宁愿页面中没有任何可见的东西(除非“如果此表单不会将您重定向到PayPal,则单击此处”),这意味着我可能需要修改渲染功能所以它 可选择允许重写按钮显示....或者可能删除与文件加载一些js的按钮..

对不起,缺乏细节,但我还没有完成代码/产品)。

让我知道是否有帮助。

+0

我希望能找到没有NE的解决方案eding javascript,即使在这些日子里,我也有大量没有激活javascript的用户。 – maraujop 2011-03-17 17:01:38