ما الذي تغيّر منذ أودو 19
- Python 3.12 أو أحدث. لا يعمل أودو 20 على أي إصدار أقدم، ويعرض تحذيرًا مع الإصدارات الأحدث من 3.14. أما أودو 19 فكان يقبل 3.10.
- PostgreSQL 16 أو أحدث. يعرض أودو 20 تحذيرًا عند اتصاله بخادم أقدم، بينما كان أودو 19 يطلب الإصدار 13.
- إمكانية اختيار محرك PDF. ما زال wkhtmltopdf هو المحرك الافتراضي، ويضيف أودو 20 محركًا اختياريًا خاصًا به هو Paper Muncher.
- صلاحيات الوصول في ملف واحد. تعرّف الوحدات صلاحيات الوصول في
security/ir.access.csv، وكل سطر فيه يربط مجموعة مستخدمين بمجموعة من العمليات مع نطاق (domain) اختياري، ويحل هذا الملف محلir.model.access.csvوقواعد السجلات (record rules) معًا.
الخطوة 1: تثبيت Python 3.12
تحقّق من الإصدار المثبّت لديك بالأمر python --version في موجّه الأوامر (Command Prompt). على Windows، الإصدار 3.12 هو الخيار الأكثر أمانًا لأنه الإصدار الذي يضبط أودو عليه إصدارات المكتبات التي يعتمد عليها. نزّل مثبّت Windows (64-bit) من python.org.
- شغّل المثبّت واختر Customize installation.
- حدّد خيار Add python.exe to PATH.
- في شاشة Optional Features أبقِ كل الخيارات محددة.
- في شاشة Advanced Options حدّد Install Python 3.12 for all users وAdd Python to environment variables، ثم اضغط Install.
الخطوة 2: تثبيت PostgreSQL 16 أو أحدث
نزّل مثبّت PostgreSQL لنظام Windows x86-64، بالإصدار 16 أو أحدث، من postgresql.org وشغّله.
- في شاشة Select Components أبقِ pgAdmin 4 وCommand Line Tools محددين.
- عيّن كلمة مرور للمستخدم
postgres، وهو المستخدم ذو الصلاحيات الكاملة (superuser)، واحفظها في مكان آمن. - اترك المنفذ على
5432وباقي الإعدادات على قيمها الافتراضية. - يمكنك تخطي Stack Builder في نهاية التثبيت، فأودو لا يحتاج منه شيئًا.
الخطوة 3: إنشاء مستخدم قاعدة البيانات لأودو
- افتح pgAdmin 4 وعيّن كلمة مرور رئيسية (master password) عندما يُطلب منك ذلك.
- وسّع Servers، ثم نسخة PostgreSQL المثبّتة لديك، ثم Login/Group Roles.
- انقر بزر الفأرة الأيمن على Login/Group Roles → Create → Login/Group Role.
- في تبويب General، سمِّ الدور
odoo20. - في تبويب Definition، عيّن كلمة مرور.
- في تبويب Privileges، فعّل Can login? وCreate databases?، ثم احفظ.
على جهازك الشخصي يمكنك أيضًا تفعيل Superuser? لتجنّب أخطاء الصلاحيات عند استعادة النسخ الاحتياطية. لا تفعل ذلك أبدًا على خادم. يرفض أودو العمل باسم المستخدم postgres نفسه، ولهذا يحصل على دور خاص به.
الخطوة 4: تثبيت أدوات بناء C++
تُثبَّت معظم مكتبات Python التي يعتمد عليها أودو من حزم wheel جاهزة، لكن بعضها ما زال يحتاج إلى تجميع كود أصلي (native) على Windows. ثبّت Build Tools for Visual Studio من Microsoft مع حزمة العمل Desktop development with C++، ثم أعد تشغيل Windows.
الخطوة 5: تثبيت wkhtmltopdf لتقارير PDF
يطبع أودو 20 الفواتير والتقارير باستخدام wkhtmltopdf افتراضيًا. نزّل مثبّت Windows (64-bit) للإصدار 0.12.6 من wkhtmltopdf.org، وثبّته بالإعدادات الافتراضية في C:\Program Files\wkhtmltopdf. ستوجّه أودو إليه في الخطوة 8.
الخطوة 6: تنزيل الكود المصدري لأودو 20
افتح المستودع الرسمي على github.com/odoo/odoo، وبدّل الفرع إلى 20.0، ثم اختر Code → Download ZIP، واستخرج الملف إلى مجلد مثل C:\Users\you\odoo-20.0. وإذا كان Git مثبّتًا لديك، فاستنسخ المستودع بدلًا من ذلك:
git clone https://github.com/odoo/odoo.git --branch 20.0 --depth 1 odoo-20.0إذا كان لديك اشتراك في أودو للمؤسسات، فاحصل على الفرع 20.0 من مستودع enterprise بالطريقة نفسها، وضعه بجانب مجلد أودو، مثلًا في C:\Users\you\enterprise.
الخطوة 7: تثبيت PyCharm
| المكوّن | المتطلبات |
|---|---|
| المعالج (CPU) | x86-64 أو ARM64، و4 أنوية |
| الذاكرة (RAM) | 8 GB إجمالًا، منها 3 GB متاحة لبيئة التطوير (IDE) |
| مساحة القرص | 10 GB |
| دقة الشاشة | 1280 × 720 |
| إصدار Windows | 10 أو 11 |
نزّل PyCharm من jetbrains.com وثبّته بالخيارات الافتراضية. أصبح PyCharm الآن منتجًا واحدًا يتضمن خطة مجانية: بعد انتهاء فترة تجربة Pro لمدة 30 يومًا، تكفي الميزات الأساسية المجانية لتطوير أودو.
الخطوة 8: إعداد المشروع في PyCharm
افتح PyCharm، واختر Open، وحدّد مجلد أودو. ثم أنشئ في جذر المجلد ملفًا باسم odoo.conf:
[options]
; master password for the database manager
admin_passwd = change-me
db_host = localhost
db_port = 5432
db_user = odoo20
db_password = your_password
addons_path = C:\Users\you\odoo-20.0\addons
; wkhtmltopdf for PDF reports, pg_dump and psql for backups
bin_path = C:\Program Files\wkhtmltopdf\bin
pg_path = C:\Program Files\PostgreSQL\16\bin
http_port = 8020استخدم الدور وكلمة المرور من الخطوة 3، وغيّر مسار مجلد PostgreSQL إذا كان الإصدار المثبّت لديك مختلفًا. ومع النسخة المؤسسية، ضع مجلدها أولًا: addons_path = C:\Users\you\enterprise,C:\Users\you\odoo-20.0\addons. والمنفذ 8020 يُبقي هذه النسخة منفصلة عن أي نسخة من أودو 19 تعمل على منفذ آخر.
بعد ذلك، اضبط مفسّر Python للمشروع (Settings → Project → Python Interpreter → Add Interpreter) على بيئة افتراضية (virtual environment) جديدة مبنية على Python 3.12، ثم ثبّت المتطلبات من الطرفية (Terminal) في PyCharm:
pip install -r requirements.txtوأخيرًا، أنشئ إعداد تشغيل (run configuration) من Run → Edit Configurations → + → Python، واملأ الحقول التالية:
- Name: Odoo 20
- Script path: ملف
odoo-binفي مجلد أودو - Parameters:
-c odoo.conf - Working directory: مجلد أودو
- Interpreter: البيئة الافتراضية التي ضبطتها أعلاه
الخطوة 9: تشغيل أودو وإنشاء قاعدة بيانات
اضغط Run. عندما يُظهر السجل أن الخادم يستمع للاتصالات، افتح http://localhost:8020. في شاشة قاعدة البيانات أدخل كلمة المرور الرئيسية من admin_passwd، واسم قاعدة البيانات، والبريد الإلكتروني للمدير وكلمة مروره، واللغة والدولة. ألغِ تحديد البيانات التجريبية (demo data) إذا أردت قاعدة بيانات نظيفة، ثم اضغط Create database.
نصائح من مطوّرينا
- احفظ وحداتك الخاصة في مجلد منفصل وأضفه إلى
addons_path، ولا تعدّل وحدات أودو الأساسية أبدًا. - ثبّت
watchdogفي البيئة الافتراضية وشغّل أودو مع--dev=all، فيُعاد تحميل تغييرات Python والواجهات (views) والقوالب (templates) دون إعادة تشغيل. - شغّل اختبارات أي وحدة على قاعدة بيانات مؤقتة باستخدام
-d test20 -i your_module --test-enable، وسيتوقف أودو عند انتهائها. - انسخ قواعد البيانات احتياطيًا واستعدها من
http://localhost:8020/web/database/manager. وهذا هو الغرض منpg_path.
تبني وحدات لعميل وتحتاج إلى مطوّرين إضافيين؟ استعن بمطوّر أودو من فريقنا في الكويت.