المحرر عبر الإنترنت

يتيح عرض المحرر عبر الإنترنت تحرير الكود المصدري للإنشاءات من متصفح الويب. كما يمنحك إمكانية فتح محطات طرفية ووحدات تحكم 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) لبناءات التطوير والاختبار. أما بالنسبة لبناءات الإنتاج، فإن الشفرة المصدرية للقراءة فقط، لأن تطبيق التغييرات المحلية على خادم الإنتاج ليس ممارسة جيدة.

ملاحظة

لفتح ملف في المحرر، انقر عليه نقرًا مزدوجًا في لوحة متصفح الملفات. يمكنك بعد ذلك تحرير الملف. لحفظ تغييراتك، انتقل إلى ملف ‣ حفظ أو استخدم اختصار لوحة المفاتيح Ctrl+S.

إذا قمت بحفظ ملف Python في مسار الإضافات الخاص بخادم Odoo، فسيكتشفه Odoo ويعيد التحميل تلقائيًا، مما يعني أن تغييراتك تكون مرئية على الفور.

التغيير في ملف Python يكون مرئيًا على الفور

ومع ذلك، إذا تم تخزين تغييراتك في قاعدة البيانات، مثل تسمية حقل أو عرض، فمن الضروري تحديث الوحدة ذات الصلة لتطبيق التغييرات. لتحديث وحدة الملف المفتوح حاليًا، انتقل إلى 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 تعرض القوائم بطريقة واضحة.

مثال على فئة Pretty

نصيحة

باستخدام pandas يمكنك عرض:

  • خلايا من ملف CSV

    مثال pandas لـ CSV
  • الرسوم البيانية

    مثال على رسم بياني pandas

يمكنك فتح وحدات تحكم 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'}]