iT邦幫忙

2025 iThome 鐵人賽

DAY 9
0
Odoo

用 Odoo 打造數位轉型引擎:從基礎建置到跨領域應用系列 第 9

Day 9:建立第一個 Odoo 模組(Hello Odoo Module)

  • 分享至 

  • xImage
  •  

在了解 Odoo 的 MVC 架構後,今天要進行實戰,帶你建立一個最簡單的 Odoo 模組。我們會從 模組結構 開始,逐步新增 Model、View,最後在介面中看到我們的第一個「Hello Odoo」模組。


1. 建立模組目錄

在 Odoo 的 addons 資料夾下建立新目錄:

cd addons
mkdir hello_odoo
cd hello_odoo

模組的基本結構如下:

hello_odoo/
│── __init__.py
│── __manifest__.py
│── models/
│    └── __init__.py
│    └── hello.py
│── views/
     └── hello_view.xml

2. 定義模組資訊(manifest.py)

每個模組都需要一個 __manifest__.py 來描述模組資訊:

{
    'name': 'Hello Odoo',
    'version': '1.0',
    'category': 'Tutorial',
    'summary': 'My first Odoo module',
    'author': 'Your Name',
    'depends': ['base'],
    'data': [
        'views/hello_view.xml',
    ],
    'installable': True,
    'application': True,
}

3. 建立 Model(models/hello.py)

models/hello.py 中定義一個簡單的資料表:

from odoo import models, fields

class HelloOdoo(models.Model):
    _name = 'hello.odoo'
    _description = 'Hello Odoo Model'

    name = fields.Char('Message', required=True, default='Hello Odoo!')

4. 建立 View(views/hello_view.xml)

views/hello_view.xml 中定義一個表格與表單視圖:

<odoo>
  <record id="view_hello_tree" model="ir.ui.view">
    <field name="name">hello.odoo.tree</field>
    <field name="model">hello.odoo</field>
    <field name="arch" type="xml">
      <tree>
        <field name="name"/>
      </tree>
    </field>
  </record>

  <record id="view_hello_form" model="ir.ui.view">
    <field name="name">hello.odoo.form</field>
    <field name="model">hello.odoo</field>
    <field name="arch" type="xml">
      <form>
        <sheet>
          <group>
            <field name="name"/>
          </group>
        </sheet>
      </form>
    </field>
  </record>

  <menuitem id="menu_hello_root" name="Hello Odoo"/>
  <menuitem id="menu_hello" name="Messages" parent="menu_hello_root"/>
  <act_window id="action_hello"
              name="Hello Odoo"
              res_model="hello.odoo"
              view_mode="tree,form"
              menu_id="menu_hello"/>
</odoo>

5. 啟動 Odoo 與安裝模組

回到 Odoo 主目錄,重啟伺服器:

./odoo-bin -c odoo.conf -d mydb -u hello_odoo

進入 http://localhost:8069,在 應用程式 (Apps) 中安裝 Hello Odoo 模組。
成功後,你會在主選單看到一個新選項,點擊即可管理你的第一個「Hello Odoo」紀錄。


小結

今天我們完成了第一個模組的開發流程:

  1. 建立模組目錄結構
  2. 撰寫 __manifest__.py
  3. 建立 Model
  4. 建立 View
  5. 安裝模組並實際操作

雖然功能很簡單,但這正是進入 Odoo 開發的第一步。接下來的篇章,我將帶你深入 Odoo ORM 基礎(Models 與 Fields),進一步理解資料模型的威力。


上一篇
Day 8:Odoo 開發框架簡介(MVC 架構)
系列文
用 Odoo 打造數位轉型引擎:從基礎建置到跨領域應用9
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言