Odoo treeView列表視圖詳解

轉載請註明原文地址:http://www.javashuo.com/article/p-qskvcrft-mw.htmlcss

 

TreeView:列表視圖

    1:<tree>標籤的屬性

    【tree標籤內的屬性,就是界面上的表現、行爲,能夠經過視圖繼承,往tree標籤增長屬性來自定義tree視圖的按鈕。】html

    列表視圖的根元素是<tree>,它能夠有如下幾種屬性:python

    1)editable

    默認狀況下選擇單行記錄時會打開對應記錄的表單,該屬性讓數據能夠在列表內進行編輯,有效的值是top和bottom,可在列表的頂部或底部添加新記錄。數據庫

    2)default_order

    重定義視圖的排序規則,以逗號分隔多個字段,可以使用desc來進行倒序<tree default_order="sequence,name desc">bootstrap

    3)decoration-樣式名

    樣式可爲  bf加粗, it斜體 或 其餘bootstrap樣式如:danger紅色, info, muted, primary, success綠色,warning橙色等等值爲python表達式,對每條記錄執行相應表達式判斷,當結果爲true的時候將對應的樣式應用。dom

    也能夠直接在標籤的css樣式值中使用表達式來動態設置,如設置顏色:函數

colors="gray:state=='cancel';red:state=='audit';green:state=='done';blue:state in('draft','confirm');"

    4)create, edit, delete

    能夠經過將它們設置爲false來禁用視圖中的對應操做按鈕:create對應建立按鈕、edit對應編輯按鈕、delete對應界面上 下拉菜單對 刪除 菜單項。code

    5)on_write

    只當啓用editable時有用,在tree視圖新增或修改記錄時,會自動調用on_write屬性值對應對函數,而且會把新增/修改的記錄做爲參數傳入【能夠在該函數執行一些數據校驗、惟一性校驗】。該函數須要返回一個用於更新列表的記錄id列表。htm

    6)繼承tree視圖,往tree標籤增長屬性,從而實如今tree界面上新增按鈕

 

    2:tree視圖中的元素

     【tree標籤之間等內容就是列表行內容。】blog

    1)button標籤:定義一個按鈕,能夠根據當前行某個字段值,動態控制行內按鈕的顯示或隱藏。按鈕經過跳轉到嚮導,context中會把對應行記錄的id做爲active_id傳遞過去。

屬性列表:
1.icon -- 用來展現按鈕的圖標
2.string -- 當沒有icon的時候,button顯示的文字,有icon的時候、至關於alt屬性值
3.type -- 按鈕類型,表示點擊它以後如何影響系統
    1)workflow(默認):將按鈕name做爲信號發送給工做流,記錄的內容做爲參數
    2)object : 調用當前數據列表模型的方法,方法名是按鈕的name,調用時帶有記錄id和當前上下文環境
    3)action : 加載ir.actions,按鈕name是該action在數據庫的id,上下文環境擴展到列表的model(做爲active_model)、當前記錄(active_id)、全部當前加載記錄的id(active_ids)
4.name--按鈕的響應函數、工做流信號、action_id
5:args--傳遞給響應函數的參數 6.attrs 基於記錄值的某個字段值,將domain表達式應用在該行字段值上,當返回值爲True的時候設置相應的屬性,通常屬性有 invisible (隱藏)、readonly (只讀但顯示) 7.states invisible屬性attrs的簡寫,給出一個以逗號分隔的state列表,須要模型有一個對應的state屬性,能夠將不在state列表中的記錄的按鈕隱藏 8.context 做爲額外的數據攜帶,在跳轉、函數調用時傳遞過去 9.confirm 當點擊按鈕時給出的確認消息

    2)field字段標籤:顯示記錄的字段值

屬性列表:
1.name 字段名
2.string 該列頭的文本名稱,默認是字段名,能夠在界面上自定義顯示名
3.invisible 查詢並且保存該字段,但界面上不顯示
4.groups 能夠看到該字段的用戶組列表
5.widget 字段的展現形式:
    progressbar 進度條用於展現浮點數
    many2onebutton當關聯字段值存在時顯示勾,不存在顯示X
    handle對於排序字段,直接顯示向上向下箭頭
    sum, avg 在底部顯示基於當前頁面數據的求和或平均值
    attrs 基於記錄值的動態屬性【屬性通常有兩個:invisible\readonly】,只對當前欄有效,便可以第一條記錄中該字段顯示,第二條隱藏,由domain表達式決定。

6.field的值支持用eval語法來運算某個表達式得到:例如:<field name="user_id" eval="ref('base.group_user')" />
相關文章
相關標籤/搜索