Web контролери. Створення API. 10 жовт. 2024 р. Контролери, типи ендпоінтів HTTP, JSON, нововведення в 16 версії Створення контролеру Щоб створити власний контролер в Odoo, нам треба створити новий клас, що наслідує http.Controller з модуля odoo.ht... Читати більше
Коригування часової зони за допомогою pytz 18 вер. 2023 р. Часто локальні сервіси віддають час у локальній часовій зоні. Розглядатимо приклад часової зони Києва +03:00. Сервіс віддає там час у такому вигляді 2023-09-17 14:37:27 який насправді мав би мати вигл... Читати більше
Кольорові теги 28 серп. 2023 р. Як зробити теги з різними кольорами, такими як на прикладі Треба в модель, яка відповідає за теги додати цілочиcельне поле, наприклад, color = fields.Integer() Або більш розгорнуто class Tag(models.Mo... Читати більше
Перехоплення помилок SQL 9 лют. 2023 р. При створенні чи оновлені записів через код (функції create та write) можуть виникати помилки цілістності даних з боку СУБД. Найбільш часто це обов'язкові поля для create та обмеження задані _sql_cons... Читати більше
Save... force_save 3 лист. 2022 р. За замовчанням Odoo не передає на зміну поля з атрибутом readonly . Ну якби логіка в цьому є: редагувати не можна, то ж воно не має змінюватись. Але не зберігається значення, що було записано программ... Читати більше
Параметри перегляду списком 24 жовт. 2022 р. Розглянем основні парамтери, які застосовуються при створені перегляду списком 1. create Атрибут create визначає чи буде відображатись кнопка Створити. Зв замовчуванню кнопка відображається tree creat... Читати більше
Заміна дії при створені запису 20 жовт. 2022 р. Є чимало випадків, коли потрібно зробити багато функціоналу на створенні запису: - додати складні перевірки - заповнити поля, які потім не можуть змінюватись - створити додаткові об'єкти складної стру... Читати більше
Як вивести додаткове поле, що містить переклад на іншу мову 17 жовт. 2022 р. В odoo передбачена можливість перекладу на різні мови не лише інтерфейсу, але й даних. Цей функціонал включається за допомогою параметра translate name = fields.Char( required = True , translate = Tru... Читати більше
Віджети для полів типу Many2one 18 трав. 2022 р. Поля типу Many2one мають власний віджет (який називається ... Many2one, а ви думали якось оригінально?) і виглядає якось отак По замовчанню він має деякі налаштування, що призводить до поведінки яка .... Читати більше
Округлення. Специфіка Python. Інструменти в Odoo 11 трав. 2022 р. Робота з даними у форматі Float (числа з плаваючою комою) мають неприємну специфіку, яка прийшла ще з минулого... століття. З минулого тисячоліття. Дуже пафосно, але так: проблема ще з 8-бітних комп'ю... Читати більше
Домени пошуку 4 трав. 2022 р. Домени пошуку являють собою список кортежів, що містять умови, та операторів зв’язку request.env[ place' ].sudo().search([ ( 'is_shown_on_mobile' , '=' , True ), ( 'is_checkpoint' , '=' , False ), ( '... Читати більше
SQL only бекап засобами PostgreSQL 30 квіт. 2022 р. Є випадки, коли стандартні механізми бекапу в Odoo не працюють. Наприклад, при великому розмірі аттачментів (більше за розмір оперативної пам'яті) або навіть при великому розмірі самої бази. Також є в... Backup SQL Читати більше