odoo基礎視圖入門學習 - from視圖的使用

上一篇內容:odoo視圖入門學習- tree視圖的使用

前言

我們在上一節的內容中學習了tree視圖的使用,這節我們需要學習from視圖的使用,from視圖其實在創建了tree視圖時候,Odoo會根據tree視圖字段渲染from視圖

瞭解什麼是from視圖

  • from視圖即表單視圖
  • 我們可以理解爲對tree列表修改,創建的時候的視圖展示樣式
  • tree視圖創建之後會自動創建一個對應的from視圖,但是我們如果想要排版或者對自己進行一些操作那麼就需要自己來自定義from視圖了

image

創建from視圖

我們上一節已經創建了tree視圖,現在需要加入from視圖需要修改兩個地方

  • 修改views文件夾中goods.xml文件act_window的view_mode的地方,添加from

    <record id="goods_spu_action" model="ir.actions.act_window">
      <field name="name">型號管理</field>
      <field name="type">ir.actions.act_window</field>
      <field name="res_model">fandx.goods.spu</field>
      <field name="view_mode">tree,form</field>
    </record>
    
  • 添加from視圖內容

    <record id="goods_view_form" model="ir.ui.view">
      <field name="name">goods_view_form</field>
      <field name="model">fandx.goods.spu</field>
      <field name="arch" type="xml">
        <form string="goods_form">
          <sheet>
            <group>
              <field name="name"/>
              <field name="brand_id"/>
              <field name="code"/>
              <field name="create_date"/>
            </group>
          </sheet>
        </form>
      </field>
    </record>
    

注意:

  • model的地方也一定要也正確
  • from裏面是組的概念所以一定要使用group組來包着field字段

from樣式展示

sheet標籤,可以將頁面覆蓋在上面下面就是有sheet標籤和沒有sheet標籤包括的樣式不同

  • 有sheet展示樣式

    <form string="goods_form">
      <sheet>
        <group>
          <field name="name"/>
          <field name="brand_id"/>
          <field name="code"/>
          <field name="create_date"/>
        </group>
      </sheet>
    </form>
    

image

  • 無sheet展示樣式

    <form string="goods_form">
        <group>
          <field name="name"/>
          <field name="brand_id"/>
          <field name="code"/>
          <field name="create_date"/>
        </group>
    </form>
    

image

  • group嵌套,一行顯示數據

    <form string="goods_form">
      <sheet>
        <group>
          <group>
            <field name="name"/>
            <field name="brand_id"/>
          </group>
          <group>
            <field name="code"/>
            <field name="create_date"/>
          </group>
        </group>
      </sheet>
    </form>
    

image

總結

簡單的from視圖創建創建就是這些了,後面還有會講到one2many,notebook,page,以及field的context,attrs,options等高級用法。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章