Онлайн редактор¶
Загальний огляд¶
Онлайн-редактор дозволяє редагувати вихідний код ваших збірок у веб-браузері. Це також дає вам можливість відкривати термінали, консолі Python, консолі Odoo Shell і Записні книжки.

Ви можете отримати доступ до редактора збірки через вкладки гілок, спадне меню збірок або додавши /odoo-sh/editor до доменного імені збірки (наприклад, 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 (odoo/odoo),
/src/enterprise (odoo/enterprise),
/src/themes (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 add
,Зафіксуйте свої зміни за допомогою
git commit
,Надсилайте свої зміни за допомогою :code:`git push https HEAD:<branch> `.
У цій останній команді
https - це ім’я вашого віддаленого сховища HTTPS Github (наприклад, https://github.com/username/repository.git),
HEAD - це посилання на останню внесену вами редакцію,
<branch> має бути замінено назвою гілки, до якої ви бажаєте внести зміни, швидше за все, поточної гілки, якщо ви працюєте в збірці розробки.

Примітка
Віддалений SSH Github не використовується, оскільки ваш приватний ключ SSH не розміщено у ваших контейнерах збірки (з очевидних проблем безпеки) і не пересилається через SSH Agent (оскільки ви отримуєте доступ до цього редактора через веб-браузер), і тому ви не можете авторизуватися в Github за допомогою SSH. Ви повинні використовувати віддалений HTTPS-репозиторій Github, щоб надіслати свої зміни, які автоматично додаються з іменем https у ваших віддалених Git. Вам буде запропоновано ввести ім’я користувача та пароль Github. Якщо ви активували двофакторну автентифікацію на Github, ви можете створити особистий маркер доступу і використовуйте його як пароль. Надання дозволу repo
достатньо.
Примітка
Вихідна папка Git ~/src/user вилучається не на гілці, а на відокремленій версії: це тому, що збірки працюють на конкретних версіях, а не на гілках. Іншими словами, це означає, що ви можете мати кілька збірок на одній гілці, але в різних ревізіях.
Після надсилання змін, відповідно до вашої поведінки надсилання гілки, може бути створено нову збірку. Ви можете продовжувати працювати в редакторі, з якого ви натиснули, оскільки він матиме ту саму версію, що й створена нова збірка, але завжди переконайтеся, що ви знаходитесь у редакторі збірки, використовуючи останню версію вашої гілки.
Консолі¶
Ви можете відкрити консолі Python, які є інтерактивнf оболонка IPython. Одним із найцікавіших доповнень для використання консолі Python замість оболонки IPython у терміналі є розширений дисплей <https://ipython.readthedocs.io/en/stable/config/integrating.html#rich-display>
_ можливості. Завдяки цьому ви зможете відображати об’єкти в HTML.
Ви можете, наприклад, відобразити клітинки файлу CSV за допомогою pandas.

Ви також можете відкрити консоль Odoo Shell, щоб пограти з реєстром Odoo і моделювати методи вашої бази даних. Ви також можете безпосередньо читати або писати на своїх записах.
Попередження
У консолі Odoo транзакції здійснюються автоматично. Це означає, наприклад, що зміни в записах ефективно застосовуються в базі даних. Якщо ви змінюєте ім’я користувача, ім’я користувача також змінюється у вашій базі даних. Тому вам слід обережно використовувати консолі Odoo у виробничих базах даних.
Ви можете використовувати env для виклику моделей реєстру вашої бази даних, наприклад. env['res.users']
.
env['res.users'].search_read([], ['name', 'email', 'login'])
[{'id': 2,
'login': 'admin',
'name': 'Administrator',
'email': 'admin@example.com'}]
Клас Pretty
дає вам можливість легко відображати списки та dicts у красивий спосіб, використовуючи rich display згаданий вище.

Ви також можете використовувати pandas для відображення графіків.
