如何在django html表单上执行验证

oipij1gg  于 2023-08-08  发布在  Go
关注(0)|答案(1)|浏览(136)

检视

def Checkout(request):
    amount_str = request.POST.get('amount')
    amount = int(float(amount_str) * 100)
    cart = request.session.get('cart')
    tax = sum(i.get('tax', 0) for i in cart.values() if i)

    payment = client.order.create(
        {
            "amount": amount, 
            "currency": "INR",
            "payment_capture" : "1"
        }
    )
    
    order_id = payment['id']

    context = {
        'tax' : tax,
        'order_id' : order_id,
        'payment' : payment,
    }
    return render(request, 'checkout/checkout.html', context)

字符串
超文本标记语言

<div class="container">
            <form method="post" action="{% url 'placeorder' %}">
                {% csrf_token %}
                <div class="row">
                    <div class="col-lg-6">
                        <div class="checkbox-form mt-30">
                            <h3>Billing Details</h3>
                            <div class="row">
                                
                                <div class="col-md-6">
                                    <div class="checkout-form-list">
                                        <label>First Name <span class="required">*</span></label>
                                        <input type="text" value="{{user.first_name}}" name="first_name" placeholder="" readonly>
                                        <input type="text" value="{{order_id}}" name="order_id" placeholder="" hidden>
                                        <input type="text" value="{{payment}}" name="payment" placeholder="" hidden>

                                    </div>
                                </div>
                                <div class="col-md-6">
                                    <div class="checkout-form-list">
                                        <label>Last Name <span class="required">*</span></label>
                                        <input type="text" value="{{user.last_name}}" name="last_name" placeholder="" readonly>
                                    </div>
                                </div>
                                
                                <div class="col-md-12">
                                    <div class="checkout-form-list">
                                        <label>Address <span class="required">*</span></label>
                                        <input type="text" name="address" placeholder="Street address">
                                    </div>
                                </div>
<div class="col-md-6">
                                    <div class="checkout-form-list">
                                        <label>Postcode / Zip <span class="required">*</span></label>
                                        <input type="text" required name="postcode" placeholder="Postcode / Zip">
                                    </div>
                                </div>
</form>
</div>
Not adding all the fields


这是我的结帐页面。如果我点击继续按钮,我想执行验证,就像所有字段都是必需的一样。但是在这个例子中,我没有添加任何验证,所以我得到了页面错误,我如何在这个代码中添加验证?我想使用Django消息执行验证

qq24tv8q

qq24tv8q1#

我认为在Django中,您可以使用Django内置的表单处理功能执行表单验证,并使用Django消息显示验证错误。
在HTML表单中添加验证,您应该创建一个对应于HTML表单中字段的Django表单。下面是你如何做到这一点:
在应用目录中创建forms.py文件(如果该文件尚不存在)。
在forms.py中定义一个Django表单类,它表示您想要验证的字段。

相关问题