Help

0

odoo13 how to use domain on one2many fields?

Avatar
hschoi

Hello, 

What I want to do is show filtered One2many fields using tree view.


I have One2many fields like below

subscription_line_ids = fields.One2many('subscription.subscription.line', 'subscription_id')

And subscription.subscription.line model has stage field 

stage = fields.Selection(
[('draft', 'Draft'),
('in progress', 'In Progress'),
('closed', 'Closed')],
default='draft')

so I tried using domain on xml like below

<field name="subscription_line_ids"
domain="[('subscription_line_ids.stage', '=', 'in progress')]"
>
<tree editable="bottom">
<field name="stage" />
<field name="close_reason_id"/>
</tree>
</field>


But the domain not working


How can I solve this problem?


I know I can do on *.py but I don't want to make fields for every stage.


Avatar
Discard
2 Semua Jawaban
0
Avatar
Samo Arko
Best Answer

In python I think you can do fields.One2many('subscription.subscription.line', 'subscription_id', domain=[('stage', '=', 'in progress')]), so try to use it xml.
<field name="subscription_line_ids" domain="[('stage', '=', 'in progress')]" >

3 Komentar
Avatar
Discard
Avatar
hschoi
-

yes it work in python. but same thing not work on xml.

Avatar
Samo Arko
-

in odoo 12 I use it in xml to filter M2M fields so it should work for O2M. But maybe it was on Odoo 10. So hope you figure it out and post how you did it.

Avatar
hschoi
-

I decided to use domain on *.py. I spent a couple of days on this. I can't spend any more time on this.

0
Avatar
Odox SoftHub LLP
Best Answer


https://www.odoo.com/forum/help-1/question/how-to-write-this-domain-for-a-one2many-field-on-a-view-114226
1 Komentar
Avatar
Discard
Avatar
hschoi
-

I don't know it is my case.

the answer of the link not show me how to use domain.