تنظیمات ترجیحی شما برای اشکال زدایی موثر ماژول های Odoo چیست؟

برای اشکال زدایی مؤثر ماژول های Odoo، به ویژه هنگام کار با خدمات توسعه Odoo، به یک راه اندازی ساختاریافته نیاز دارید که فرآیند را ساده کند. در زیر یک رویکرد فنی برای اشکال زدایی ماژول های Odoo آورده شده است:
راه اندازی ترجیحی برای اشکال زدایی ماژول های Odoo
1. پیکربندی محیط:
از یک محیط مجازی اختصاصی با پایتون استفاده کنید (معمولا نسخه 3.8 یا بالاتر، بسته به نسخه Odoo شما).
وابستگی ها را با استفاده از pip نصب کنید و اطمینان حاصل کنید که requires.txt با نسخه Odoo در حال استفاده هماهنگ است.
2. حالت Debugging را در Odoo فعال کنید:
هنگام اجرای سرور Odoo، پارامتر –dev=all را اضافه کنید. این ابزارهای جامع ثبت و اشکال زدایی را فعال می کند.
./odoo-bin -c --dev=all
همچنین، debug_mode را در جدول ir.config_parameter برای نمونه های خاص روی True قرار دهید.
3. پیکربندی ورود به سیستم:
فایل odoo.conf را سفارشی کنید تا شامل گزارش دقیق باشد:
[options]
log_level = debug
log_handler = :DEBUG
از کتابخانههای ثبت خارجی مانند loguru یا ورود به ماژولهای سفارشی برای بینشهای دقیق استفاده کنید.
4. از Breakpoints با Debugger استفاده کنید:
کد PyCharm یا VS را برای اشکال زدایی ادغام کنید:
-
PyCharm:
با پیوند دادن کد منبع Odoo و استفاده از فایل odoo-bin به عنوان مسیر اسکریپت، یک دیباگر راه دور را پیکربندی کنید. -
کد VS:
از برنامه افزودنی پایتون با پیکربندی launch.json برای فعال کردن اشکال زدایی نقطه شکست استفاده کنید.
{
"name": "Debug Odoo",
"type": "python",
"request": "launch",
"program": "${workspaceFolder}/odoo/odoo-bin",
"args": ["-c", "", "--dev=all"],
"console": "integratedTerminal"
}
5. دسترسی به پایگاه داده:
- از ابزارهای pgAdmin یا خط فرمان PostgreSQL برای بررسی تغییرات پایگاه داده در زمان واقعی استفاده کنید.
- با اضافه کردن –log-sql هنگام راه اندازی سرور، ثبت SQL را فعال کنید.
6. ابزار تست:
تست های واحد را با چارچوب تست داخلی Odoo بنویسید:
from odoo.tests.common import TransactionCase
class TestMyModule(TransactionCase):
def test_my_feature(self):
record = self.env['my.model'].create({'field_name': 'value'})
self.assertEqual(record.field_name, 'value')
از pytest با افزونه هایی مانند pytest-odoo برای پوشش تست اضافی استفاده کنید.
7. بارگذاری مجدد زنده:
- هنگامی که تغییرات در کد ماژول شناسایی شد، از Watchdog یا ابزارهایی مانند odoo-autoreload برای راه اندازی مجدد خودکار سرور استفاده کنید.
- نمونه ای از راه اندازی odoo-autoreload:
odoo-autoreload -c --dev=all
8. درخواست های HTTP را بررسی کنید:
- از ابزارهایی مانند Postman یا ابزارهای توسعه دهنده مرورگر برای بررسی درخواست های HTTP و آزمایش نقاط پایانی API استفاده کنید.
- از ابزارهای داخلی /web/debug Odoo برای بازرسی داده های سمت مشتری و درخواست های شبکه استفاده کنید.
9. اشکال زدایی Frontend:
- با افزودن ?debug=assets به URL از کنسول مرورگر و حالت دارایی های اشکال زدایی داخلی Odoo استفاده کنید.
- اشکال زدایی جاوا اسکریپت را با استفاده از ابزارهای توسعه دهنده مرورگر و چارچوب وب ساختار یافته Odoo.
10. ردیابی خطا:
ابزارهای نظارت بر خطا مانند Sentry را برای ردیابی استثناها در محیط های تولید ادغام کنید.
با استفاده از این ابزارها و شیوهها، میتوانید ماژولهای Odoo را به طور مؤثرتری بسازید و اشکالزدایی کنید و از ارائه یکپارچه خدمات توسعه Odoo اطمینان حاصل کنید.