Skip to Content
เมนู
คุณต้องลงทะเบียนเพื่อโต้ตอบกับคอมมูนิตี้
คำถามนี้ถูกตั้งค่าสถานะ
2 ตอบกลับ
7023 มุมมอง

I have defined a constraint on model "sale.order". On the backend, I raise a warning (exceptions.Warning) message when a condition is not satisfied: there it works fine. The problem come on the website: when the warning's condition is not satisfied odoo raise the classical 500 page error. How can I manage this error through show an alert window or a message for the user in a pretty way? I suppose I can re-define the structure of 500 page error, but I want to manage this error like other classical error(field required, ....). Thanks

อวตาร
ละทิ้ง
คำตอบที่ดีที่สุด

This can be done using js and qweb website templates.

You have to catch the proper errors and pass this to the desired js function or xml template. From here qweb website templates can check the values you have given while rendering using t-if command, so you can make the desired field in required. From js you can call python function and from here you can return the values. Follow the same steps to make the field required.

อวตาร
ละทิ้ง
คำตอบที่ดีที่สุด

Checkout Website_payment module controller. or in login


Sample code: 

pass the error msg in controller

{

                    'error': {},

                    'error_message': [],

                    'return_url': return_url,

                    'json': False,

                    'bootstrap_formatting': True

                }


and in XML template

        <xpath expr="//div[@class='clearfix']"

            position="before">

            <div>

                <p class="alert alert-danger" t-if="error">

                    <t t-esc="error"/>

                </p>

            </div>

        </xpath>

อวตาร
ละทิ้ง
Related Posts ตอบกลับ มุมมอง กิจกรรม
Clean up Website Quotations แก้ไขแล้ว
2
ก.ย. 24
4311
1
มี.ค. 18
4818
1
ส.ค. 25
461
1
พ.ค. 24
2781
1
พ.ค. 24
2781