المحرر عبر الإنترنت¶
يتيح عرض المحرر عبر الإنترنت تحرير الكود المصدري للإنشاءات من متصفح الويب. كما يمنحك إمكانية فتح محطات طرفية ووحدات تحكم Python ووحدات تحكم Odoo shell و`دفاتر Jupyter <https://jupyterlab.readthedocs.io/en/stable/user/notebook.html>`_.
يمكنك الوصول إلى محرر البناء من خلال تبويب الفروع، أو القائمة المنسدلة للبناءات، أو بإضافة /odoo-sh/editor إلى عنوان URL الخاص بالبناء (مثل https://odoo-addons-master-1.dev.odoo.com/odoo-sh/editor).
تحرير الشفرة المصدرية¶
يتكون دليل العمل مما يلي:
.
├── home
│ └── odoo
│ ├── src
│ │ ├── odoo Odoo Community source code
│ │ │ └── odoo-bin Odoo server executable
│ │ ├── enterprise Odoo Enterprise source code
│ │ ├── themes Odoo Themes source code
│ │ └── user Your repository branch source code
│ ├── data
│ │ ├── filestore Database attachments, as well as the files of binary fields
│ │ └── sessions Visitors and users sessions
│ └── logs
│ ├── install.log Database installation logs
│ ├── odoo.log Running server logs
│ ├── update.log Database updates logs
│ └── pip.log Python packages installation logs
يمكنك تحرير الشفرة المصدرية (الملفات الموجودة تحت /src) لبناءات التطوير والاختبار. أما بالنسبة لبناءات الإنتاج، فإن الشفرة المصدرية للقراءة فقط، لأن تطبيق التغييرات المحلية على خادم الإنتاج ليس ممارسة جيدة.
ملاحظة
لن يتم نشر تغييراتك إلى البناءات الجديدة. من الضروري إيداعها في الشفرة المصدرية إذا كنت تريد أن تستمر.
تقع الشفرة المصدرية لمستودع GitHub الخاص بك تحت
/src/user.تقع الشفرة المصدرية لـ Odoo تحت:
/src/odoo(https://github.com/odoo/odoo)/src/enterprise(https://github.com/odoo/enterprise)/src/themes(https://github.com/odoo/design-themes)
لفتح ملف في المحرر، انقر عليه نقرًا مزدوجًا في لوحة متصفح الملفات. يمكنك بعد ذلك تحرير الملف. لحفظ تغييراتك، انتقل إلى أو استخدم اختصار لوحة المفاتيح Ctrl+S.
إذا قمت بحفظ ملف Python في مسار الإضافات الخاص بخادم Odoo، فسيكتشفه Odoo ويعيد التحميل تلقائيًا، مما يعني أن تغييراتك تكون مرئية على الفور.
ومع ذلك، إذا تم تخزين تغييراتك في قاعدة البيانات، مثل تسمية حقل أو عرض، فمن الضروري تحديث الوحدة ذات الصلة لتطبيق التغييرات. لتحديث وحدة الملف المفتوح حاليًا، انتقل إلى .
نصيحة
يمكنك أيضًا تنفيذ الأمر التالي في الطرفية لتحديث وحدة:
odoo-bin -u <comma-separated module names> --stop-after-init
إيداع ودفع التغييرات¶
لإيداع ودفع التغييرات إلى مستودع GitHub الخاص بك:
افتح طرفية بالانتقال إلى .
غيّر الدليل إلى
~/src/user.cd ~/src/userحدد هويتك.
git config --global user.email "you@example.com" && git config --global user.name "Your Name"
جهّز تغييراتك.
git add
قم بتثبيت تغييراتك.
git commit
ارفع تغييراتك.
git push https HEAD:<branch>
في هذا الأمر:
httpsهو اسم مستودع GitHub البعيد باستخدام HTTPS (مثلhttps://github.com/username/repository.git).HEADهو المرجع لأحدث مراجعة قمت بتثبيتها.يجب استبدال
<branch>باسم الفرع الذي تريد رفع التغييرات إليه، على الأرجح الفرع الحالي إذا كنت تعمل على نسخة تطوير.
ستتم مطالبتك بإدخال اسم المستخدم وكلمة المرور الخاصة بـ GitHub. بعد إدخال بيانات الاعتماد، اضغط على Enter.
نصيحة
إذا قمت بتفعيل المصادقة الثنائية لحساب GitHub الخاص بك، يمكنك إنشاء رمز وصول شخصي واستخدامه ككلمة مرور. منح إذن المستودع يكفي.
ملاحظة
لا يمكن المصادقة باستخدام SSH، حيث أن مفتاح SSH الخاص بك غير مستضاف في حاويات النسخ الخاصة بك لأسباب أمنية، ولا يتم إعادة توجيهه عبر وكيل SSH، حيث تصل إلى المحرر من خلال متصفح الويب.
مجلد المصدر
~/src/userغير محدد على فرع بل على مراجعة منفصلة. وذلك لأن النسخ تعمل على مراجعات محددة بدلاً من الفروع، مما يعني أنه يمكن أن يكون لديك نسخ متعددة على نفس الفرع، ولكن على مراجعات مختلفة.
بمجرد رفع تغييراتك، وفقًا لـ سلوك رفع الفرع، قد يتم إنشاء نسخة جديدة. يمكنك الاستمرار في العمل في المحرر الذي رفعت منه، حيث سيكون له نفس المراجعة التي تم إنشاء النسخة الجديدة عليها. ومع ذلك، تأكد دائمًا من أن تكون في محرر نسخة تستخدم أحدث مراجعة لفرعك.
أدوات التحكم¶
يمكنك فتح وحدات تحكم Python، وهي أغلفة IPython التفاعلية. استخدام وحدات تحكم Python هذه (بدلاً من أغلفة IPython داخل طرفية) يسمح لك باستخدام إمكانيات العرض الغنية لعرض الكائنات بتنسيق HTML.
Example
فئة Pretty تعرض القوائم بطريقة واضحة.
يمكنك فتح وحدات تحكم Odoo shell لتجربة سجل Odoo وطرق النموذج الخاصة بقاعدة بياناتك. يمكنك أيضًا القراءة أو الكتابة مباشرة على سجلاتك.
تحذير
في وحدة تحكم Odoo shell، يتم تنفيذ المعاملات تلقائيًا. هذا يعني أن التغييرات التي تم إجراؤها على السجلات يتم تطبيقها على قاعدة البيانات. على سبيل المثال، إذا قمت بتغيير اسم مستخدم، فسيتم تحديثه في قاعدة البيانات أيضًا. لذلك، استخدم وحدات تحكم Odoo shell بحذر على قواعد البيانات الإنتاجية.
يمكنك استخدام env لاستدعاء نماذج سجل قاعدة البيانات الخاصة بك، على سبيل المثال env['res.users'].
env['res.users'].search_read([], ['name', 'email', 'login'])
[{'id': 2,
'login': 'admin',
'name': 'Administrator',
'email': 'admin@example.com'}]