Bài học

Bài học thuộc : Odoo tip Trạng thái bài học : Chưa hoàn thành

Xử lý các lỗi ngoại lệ trong odoo (Odoo Exception)

Để xử lý các lỗi loại lệ trước tiên trong file python bạn cần import thư viện xử lý lỗi của odoo như sau:

# Odoo 9:
from openerp.exceptions import UserError, ValidationError, RedirectWarning
from openerp.exceptions import MissingError, DeferredException
from openerp.exceptions import AccessDenied, AccessError, QWebException


# Odoo 10 trở lên:
from odoo.exceptions import UserError, ValidationError, RedirectWarning
from odoo.exceptions import MissingError, DeferredException
from odoo.exceptions import AccessDenied, AccessError, QWebException

# Bạn sử dụng Exception nào thì chỉ cần import Exception 
# đó hoặc import toàn bộ thư viện exceptions

Tại đây giải thích Biệt lệ mặc định python bạn hãy tham khảo để bắt lỗi trong khi code

Odoo cung cấp 8 cách để xử lý các lỗi ngoại lệ đối với từng trường hợp như sau:

1. RedirectWarning – Chuyển hướng tới action nào đó

Code sử dụng như sau:

# Ghi thông báo ra mà hình
raise RedirectWarning ("Khong lam gi","1037", "Chuyển tới")

Khi gặp dòng lênh trên, odoo sẽ dừng mọi tiến trình và popup lên một thông báo có tiêu đề “Odoo warning” nội dung là “khong lam gì” với 2 nút hành động là “Huy” (cancel) và nút còn lại có nhãn là “Chuyển tới”. Khi người dùng bấm nút “Chuyển tới”, odoo sẽ chuyển hướng trình duyệt tới action có số id là 1037.

Trong quá trình code bạn có thể xác định id của action cần chuyển hướng tới bằng nhiều cách trong đó có cách đơn giản nhất là truy cập theo external_id của action. (tham khảo thêm về action)



Tags:


Gắn sao :  

Tác giả : admin admin

`
×