Налаштування¶
У цьому розділі ви дізнаєтесь:
Щоб налаштувати ваше локальне середовище розробки.
Структура бази даних Odoo.
Експортувати та імпортувати базу даних Odoo у вашому локальному середовищі.
Щоб екземпляр Odoo працював.
Встановити¶
Існує кілька способів встановити Odoo, залежно від передбачуваного випадку використання. Ця документація передбачає використання встановлення з вихідного коду (запуск Odoo з вихідного коду), що найкраще підходить для дизайнерів та розробників Odoo.
Бази даних¶
Структура¶
Кожен застосунок Odoo працює схоже; вони побудовані за однаковою логікою. Модель містить поля та реляційні поля, які пов’язані з іншими моделями. Кожна модель має представлення, що представляють усі її поля, з представленнями для бекенду та фронтенду.
Моделі¶
Основою Odoo є моделі. Моделі використовують поля для запису даних. Записи зберігаються в базі даних: таким чином, вони пов’язані з моделлю. В Odoo ви можете знайти різні моделі в бекенді, увімкнувши режим розробника, а потім перейшовши до .
Поля¶
У моделі ми централізуємо поля (назви полів, на які нам потрібно орієнтуватися в нашому коді).
Перегляньте також
Класичні поля¶
Date
Char
Вибір
…
Реляційні поля¶
Реляційні поля викликають поле з іншої моделі. Вони дозволяють пов’язувати моделі разом та спрощують їх взаємодію. Іншими словами, коли ви використовуєте реляційне поле, ви пов’язуєте запис з іншим (розташованим в іншій моделі), що дозволяє вам отримувати вміст полів, розташованих у цьому пов’язаному записі.
Поля Many2one заповнюються шляхом вибору одного запису зі списку записів в іншій моделі (з many записів ви вибираєте one). Наприклад, поле клієнт у комерційній пропозиції дозволяє вибрати одного клієнта зі списку кількох клієнтів у моделі контакт.
Поля One2many – це зворотний пошук існуючих зв’язків many2one. Наприклад, ви можете перерахувати для контакту всі його існуючі цитати (з one запису ви відображаєте many).
Поля Many2many заповнюються шляхом вибору одного або кількох записів зі списку записів на іншій моделі. Наприклад, ви можете розмістити кілька тегів на одному продукті, і кілька продуктів можуть використовувати однакові теги (з записів many можна вибрати many).
Представлення¶
Представлення визначають, як записи мають відображатися кінцевим користувачам. Вони вказані в XML, тобто їх можна редагувати незалежно від моделей, які вони представляють. Вони гнучкі та дозволяють глибоко налаштовувати екрани, якими вони керують.
Backend vs. Frontend¶
Представлення бекенду: Канбан, Список, Форма тощо.
Представлення фронтенду: QWeb
Static vs. Dynamic¶
Статичні сторінки мають стабільний контент, такий як головна сторінка. Ви можете визначити їх URL-адресу та встановити деякі властивості, такі як опубліковано, проіндексовано тощо.
Динамічні сторінки генеруються динамічно, як-от сторінка товару. Їхня URL-адреса динамічна та доступна всім за замовчуванням (це можна змінити, налаштувавши права доступу).
Base vs. Inherited vs. Duplicated¶
Базовий перегляд: Вид, реалізований нативно Odoo. Він безпосередньо походить від їхньої моделі. Базовий вигляд ніколи не слід змінювати, оскільки він дозволяє оновлювати базу даних Odoo без перезапису модифікацій клієнта.
Зміни завжди відбуваються або в дублікатному, або в успадкованому представленні, з деякими відмінностями:
Успадковане представлення завжди має
inherit_idта застосовує модифікації на основі вихідного коду базового представлення, від якого він успадковується.Дубліковане представлення – це дублювання іншого представлення. Найчастіше таке представлення створюється Odoo, коли кінцевий користувач застосовує зміни через Конструктор веб-сайтів. Цей механізм запобігає втраті даних під час оновлення модуля, оскільки оновлюватиметься лише вихідне представлення, а не дубліковане. Якщо дубліковане представлення існує, у списку відображатимуться як оригінальне, так і дубліковане представлення, але лише дубліковане має
external_id(встановленняexternal_idозначає, що представлення було створено вихідним кодом модуля).
Імпорт існуючої бази даних¶
Примітка
Ви можете перейти безпосередньо до розділу Theming, якщо вам не потрібно імпортувати існуючу базу даних.
Dump¶
Odoo SaaS¶
Увійдіть до облікового запису користувача з достатніми правами доступу.
Перейдіть до
<database_url>/saas_worker/dump.
Odoo.sh¶
Підключіться до Odoo.sh.
Виберіть гілку, резервну копію якої потрібно створити.
Виберіть вкладку РЕЗЕРВНІ КОПІЇ.
Натисніть кнопку Створити резервну копію.
Коли процес завершиться, з’явиться сповіщення. Відкрийте його та натисніть кнопку Перейти до резервної копії.
Натисніть значок Завантажити. Виберіть Тестування у розділі Мета та З файловим сховищем у розділі Сховище файлів.
Ви отримаєте сповіщення, коли дамп буде готовий до завантаження. Відкрийте його та натисніть Завантажити, щоб отримати свій дамп.
Переміщення файлового сховища¶
Скопіюйте всі папки, що містяться в папці сховища файлів, і вставте їх у таке місце на вашому комп’ютері:
macOS:
/Users/<User>/Library/Application Support/Odoo/filestore/<database_name>Linux:
/home/<User>/.local/share/Odoo/filestore/<database_name>
Примітка
/Library — це прихована папка.
Налаштування бази даних¶
Створіть порожню базу даних.
createdb <database_name>
Імпортуйте SQL-файл у базу даних, яку ви щойно створили.
psql <database_name> < dump.sql
Скиньте пароль адміністратора.
psql \c
<database_name>
update res_users set login='admin', password='admin' where id=2;
За потреби вимкніть параметр політики примусового застосування двофакторної автентифікації.
psql <database-name>
update res_users set totp_secret='' where id=2;
Початок¶
Запуск Odoo¶
Після налаштування всіх залежностей Odoo можна запустити, виконавши команду odoo-bin, інтерфейс командного рядка сервера. Він розташований у кореневому каталозі спільноти Odoo.
Для налаштування сервера можна вказати аргументи командного рядка або файл конфігурації. Перший метод представлено нижче.
CLI пропонує кілька функцій, пов’язаних з Odoo. Ви можете використовувати його для запуск сервера, створення шаблону теми Odoo, заповнення бази даних або підрахунку кількості рядків коду.
Shell script¶
Типовий спосіб запустити сервер - це додати всі аргументи командного рядка до скрипта .sh.
Example
./odoo-bin --addons-path=../enterprise,addons --db-filter=<database> -d <database> --without-demo=all -i website --dev=xml
Папка |
Опис |
|---|---|
Список розділених комами каталогів, у яких зберігаються модулі. Ці каталоги скануються на наявність модулів. |
|
база(и) даних, що використовуються під час встановлення або оновлення модулів. |
|
Приховує бази даних, які не відповідають фільтру. |
|
Список модулів, розділених комами, які потрібно встановити перед запуском сервера. (потрібно |
|
Список модулів, розділених комами, які потрібно оновити перед запуском сервера. (потрібно |
|
Вимикає завантаження демонстраційних даних для встановлених модулів, розділених комами; використовуйте |
|
Список функцій, розділених комами. Тільки для цілей розробки. Додаткова інформація |
Увійти¶
Після запуску сервера (виводиться журнал INFO odoo.modules.loading: Modules loaded.), відкрийте http://localhost:8069 у вашому веббраузері та увійдіть у систему з базовим обліковим записом адміністратора.
Введіть admin для електронної пошти та admin для пароля.
Порада
Натисніть CTRL+C, щоб зупинити сервер. Зробіть це двічі, якщо потрібно.
Режим розробника¶
Режим розробника, також відомий як режим налагодження, корисний для розробки, оскільки він надає доступ до додаткових інструментів. У наступних розділах передбачається, що ви ввімкнули режим розробника.
Перегляньте також