odoo中頁面跳轉相關


在添加自定義服務器動作 “復制全部”后發現直接創建了新的記錄,並且直接進入到form保存完的狀態。

如何解決:

復制代碼
        if yourself_obj_copy: return { 'type': 'ir.actions.act_window', 'view_type': 'form', 'view_mode': 'form', 'res_model': '你的模塊名.模型名', 'res_id': yourself_obj_copy.id, 'context': self.env.context, 'flags': {'initial_mode': 'edit'}, }
復制代碼

加上上方紅色部分,就可以默認進入form視圖的編輯狀態。

這里需要注意一下:odoo自帶的服務器動作 -- 復制  其實也不是復制,而是創建了一份新的直接保存了,

即使你點擊復制進入新的編輯界面,這時不點“保存”,直接“丟棄”,其實是沒有效果的,這條記錄已經在點擊“復制”的時候創建了。

 

頁面跳轉可以參考如下文章:

在odoo視圖中有時點擊按鈕需要跳轉到另一個視圖,此時有如下參數需要注意

系統的默認值:
_defaults = {
        'type': 'ir.actions.act_window',
        'view_type': 'form',
        'view_mode': 'tree,form',
        'context': '{}',
        'limit': 80,
        'target': 'current',
        'auto_refresh': 0,
        'auto_search':True,
        'multi': False,
    }
# type: 動作類型,默認為ir.actions.act_window
# view_type: 跳轉時打開的視圖類型
# view_mode: 列出允許使用的視圖模式
# context: 給目標視圖傳參數,如默認搜索之類的,如{‘search_default_group_assign’:1}
# limit: 列表視圖一頁的記錄數
# target: 打開新視圖的方式,current是在本視圖打開,new是彈出一個窗口打開
# auto_refresh:為1時在視圖中添加一個刷新功能
# auto_search:加載默認視圖后,自動搜索
# multi:視圖中有個更多按鈕,若multi設為True, 更多按鈕顯示在tree視圖,否則顯示在form視圖
 

以下內容是一些需特別注意的參數

# res_model:想打開視圖的對應模塊
# res_id: 參數為id,加載指定id的視圖,但只在view_type為form時生效,若沒有這個參數則會新建一條記錄
# view_id: 參數是id,若一個模塊有多於>1個視圖時需要指定視圖id,可根據視圖名稱去ir.ui.view模塊搜索
# views:是(view_id,view_type) 元組對列表,第一組是動作默認打開的視圖
# flags: 對視圖面板進行一些設置,如{‘form’: {‘action_buttons’: True, ‘options’: {‘mode’: ‘edit’}}}即對form視圖進行一些設置,action_buttons為True時調出編輯保存按鈕,options’: {‘mode’: ‘edit’}時則打開時對默認狀態為編輯狀態
 
我參考的是   https://www.cnblogs.com/hellojesson/p/8405539.html
 
 
 
 
下面說下我在寫這個東西時遇到的坑
 
def repair(self):
view_id = self.env.ref('equipment.view_equipment_create_repair_form').id
return {'type': 'ir.actions.act_window',
'view_type': 'form',
"view_mode": "form",
'res_model': 'equipment.repair',
'target': 'new',
# 'view_id': view_id,
'views': [[view_id, "form"]],
'context': {'form_view_ref': 'equipment.view_equipment_create_repair_form'},
}

這個是我復制別人的,但由於剛步入odoo中 習慣性在方法前寫@api.one,所以代碼好好的,debug也走完了,但效果就是出不來,第二天我們頭兒才幫我找到這個問題。
把這個分享出去,好讓更多的人,少廢點腦細胞。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM