Skip to Content
เมนู
คุณต้องลงทะเบียนเพื่อโต้ตอบกับคอมมูนิตี้
คำถามนี้ถูกตั้งค่าสถานะ
2 ตอบกลับ
13585 มุมมอง

I want to make a tree view that shows only records with certain client ids which are dynamically calculated by by function. I've tried to inject these ids as a domain by overriding fields_view_get() method however to no avail.

What is the proper way to achieve this?

อวตาร
ละทิ้ง
คำตอบที่ดีที่สุด

Hi Dohn_joe,

If you want to search records on tree view dynamically on menu click

Solution 1 :  you can can override search method of the model to hit the GOAL

Solution 2 : Set default filter on search view and the comparison value of default search filter you can evaluate using compute or functional field.

Solution 3: If you want to return tree view from any method with specific domain than you can go with Avinash Solution.

I hope this would give you some idea.


Rgds,

Anil.


อวตาร
ละทิ้ง
ผู้เขียน

Thank you! Overriding search method worked.

คำตอบที่ดีที่สุด

Hi dohn_joe,

You can return the view from python like this

tree_view_ref = self.env.ref('module_name.tree_view_id', False)
form_view_ref = self.env.ref('module_name.form_view_id', False)
return {
'name': "Name of Action",
'view_mode': 'tree, form',
'view_id': False,
'view_type': 'form',
'res_model': 'your.model',
'type': 'ir.actions.act_window',
'target': 'current',
'domain': "[('id', 'in', %s)]" % record_set,
'views': [(tree_view_ref and tree_view_ref.id or False, 'tree'),
(form_view_ref and form_view_ref.id or False, 'form')],
'context': {}
}

You can Dynamically define the record_set variable. it can be a list of items.

Thank you.

อวตาร
ละทิ้ง
Related Posts ตอบกลับ มุมมอง กิจกรรม
2
มี.ค. 24
11369
5
ส.ค. 20
7522
1
ธ.ค. 19
5415
0
ก.ย. 17
3591
0
ส.ค. 17
2910