Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 与Django的条带集成错误_Python_Django_Stripe Payments_Stripe.net - Fatal编程技术网

Python 与Django的条带集成错误

Python 与Django的条带集成错误,python,django,stripe-payments,stripe.net,Python,Django,Stripe Payments,Stripe.net,我在django电子商务上跟踪了一个错误,在尝试测试Stripe应用程序时遇到了404错误。具体来说,我在提交测试付款时被重定向到“” in views.py def checkout(request): publishKey = settings.STRIPE_PUBLISHABLE_KEY if request.method == 'POST': token = request.POST['stripeToken'] try:

我在django电子商务上跟踪了一个错误,在尝试测试Stripe应用程序时遇到了404错误。具体来说,我在提交测试付款时被重定向到“”

in views.py

def checkout(request):
    publishKey = settings.STRIPE_PUBLISHABLE_KEY
    if request.method == 'POST':
        token = request.POST['stripeToken']
        try:
            charge = stripe.Charge.create(
                amount=1000,
                currency="gbp",
                description="Example charge",
                source=token,
                )
        except stripe.error.CardError as e:
            pass

    context ={'publishKey': publishKey}
    template = 'checkout.html'
    return render(request,template,context)
在checkout.html中:

{% block strip %}
<script type="text/javascript">
Stripe.setPublishableKey('{{ publishKey }}');
function stripeResponseHandler(status, response) {
  // Grab the form:
  var $form = $('#payment-form');
  if (response.error) { // Problem!
    // Show the errors on the form
    $form.find('.payment-errors').text(response.error.message);
    $form.find('button').prop('disabled', false); // Re-enable submission
  } else { // Token was created!
    // Get the token ID:
    var token = response.id;
    // Insert the token into the form so it gets submitted to the server:
    $form.append($('<input type="hidden" name="stripeToken" />').val(token));
    // Submit the form:
    $form.get(0).submit();
  }
}
</script>
{% endblock %}


{% block jquery %}
$(function() {
    var $form = $('#payment-form');
    $form.submit(function(event) {
    $form.find('.submit').prop('disabled',true);
    Stripe.card.createToken($form,stripeResponseHandler);
    return false;
    });
});
{% endblock %}
{%block strip%}
Stripe.setPublishableKey({{publishKey}}');
函数stripeResponseHandler(状态、响应){
//抓取表格:
var$form=$(“#付款单”);
if(response.error){//问题!
//在表单上显示错误
$form.find('.payment errors').text(response.error.message);
$form.find('button').prop('disabled',false);//重新启用提交
}否则{//令牌已创建!
//获取令牌ID:
var token=response.id;
//将令牌插入表单,以便将其提交到服务器:
$form.append($('').val(标记));
//提交表格:
$form.get(0.submit();
}
}
{%endblock%}
{%block jquery%}
$(函数(){
var$form=$(“#付款单”);
$form.submit(函数(事件){
$form.find('.submit').prop('disabled',true);
Stripe.card.createToken($form,stripeResponseHandler);
返回false;
});
});
{%endblock%}
在base.html中

    {% block script %}    
    {% endblock %}

    <script>
$(document).ready(function(){
    {% block jquery %}
    {% endblock %}

});
    </script>
{%block script%}
{%endblock%}
$(文档).ready(函数(){
{%block jquery%}
{%endblock%}
});

我做错了什么?为什么“提交”按钮会自动将我重定向到a./your charge code/url?我是django和web开发的新手,希望这里的一些专家能指导我。谢谢

您的视图中有一个表单,用于提交通过签出创建的令牌,它可能有一个动作设置为
/您的收费代码
,这是您需要更改的部分,以匹配
视图的路径。py
。嘿,koopajah,谢谢。这解决了我的问题。我真是个笨蛋。