2017-08-24 87 views
0

我有醫院預約登記模型,該模型是涉及實驗室測試模型:odoo 9如何繼承父視圖many2one字段值

'lab_test_ids': fields.one2many('oeh.medical.lab.test','apoointment','Lab Tests', readonly=False,states={'Completed': [('readonly', True)]}), 
在我有下約會形式的TAB(頁)的視圖

page string="Lab Tests"> <field name="lab_test_ids" context="{'default_appointment': active_id}" domain="[('appointment', '=', active_id)"> 

我的挑戰是我有耐心和醫生在這兩個視圖(選擇領域)涉及到兩個其他模型。我想知道是否可以在父視圖中爲患者字段設置值,並將該值繼承到子視圖(Lab test)。我怎樣才能做到這一點?

現在我使用域來篩選患者。而候選患者只有一個。我怎樣才能將這個值自動設置到該字段。

> <field name="patient" domain="[('id', '=', parent.patient)]" 

我感謝您的幫助。

回答

0

我不知道我100%完全理解了這個問題,但您只有幾個選項來處理在視圖之間複製字段數據的場景。

1. Onchange Field。如果他們在相同的視圖上創建一個onchange。 (不相信這會爲你工作。)

lab_test = fields.One2many(...) 

@api.onchange('lab_test') 
def _onchange_set_lab_test(self): 
    self.other_field = self.lab_test 

2. 相關領域。安裝孩子,如果是同一類型的相關領域:

child = fields.One2many(related='lab_test') 

3. 計算字段。將孩子設置爲計算字段,並提取所需的任何信息。

child = fields.One2many(compute='_compute_child_field')