Шпаргалка по созданию модуля odoo 10 - m3dbedb/odoo GitHub Wiki
Создаём папку модуля, например, project_version
. Название папки равно названию модуля, они могут содержать буквы, цифры и знак подчёркивания.
Создаём файл __init__.py
со ссылкой на файлы питона без расширения через запятую.
Создаём файл __manifest__.py
с параметрами name, application, author, depends, description
. Обязательный параметр только name
Примечания - отступы на питоне - 4 символа, метка конца файла на последней строке с текстом. Использование русского языка приводит к ошибке "All strings must be XML compatible. Unicode or ASCII, no NULL bytes or control characters."
Создаём файл на питоне, описывающий класс модуля (один или несколько), например, project_version.py
После этого можно установить модуль и убедиться что ваша модель отобразилась в меню Настройки>Технические>Структура БД>Модели
Теперь создаём описание нового звена меню (если требуется) и вид в папке views, например versions_menu.xml
<menuitem id="menu_project_version"
parent="project.menu_project_config"
name="Versions"
action="action_project_versions"
sequence="4" />
XML ID родительского узла можно посмотреть в файле, описывающем вид основного модуля, к которому вы добавляете свое приложение, существующие последовательности меню можно посмотреть введя в строке поиска название родительского узла в окне Настройки>Технические>Интерфейс>Узлы меню на вкладке Подменю Новой строке меню должно соответствовать действие, иначе оно не отобразится, действие должно быть описано в виде
<act_window id="action_project_versions"
name="Project versions"
res_model="project.version"
view_mode="tree,form" />
Прописываем файл вида в __manifest__.py
:
'data': ['views/versions_menu.xml'],
Если модуль установлен, достаточно обновить модуль и меню должно появиться.
Пример смотри в отдельной странице