Hi,
I'm trying to add a decoration to a badge in widget in a list view.
I have it working on a default view using this:
field name="status" widget="badge" decoration-success= "status == 'Done'"
But when I'm trying to use in on another view using xpath, I'm not able to get it right. I think that should be something like this:
xpath expr="//field[@name='status']" position="attributes"
attribute name="widget">badge attribute
attribute name="decoration-success"> [['status','=','Done']] attribute
xpath
Any suggestions?
Thanks
Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:
- CRM
- e-Commerce
- Accounting
- Inventory
- PoS
- Project
- MRP
This question has been flagged
Hi,
I would recommand that you create a related and stored field:
status_name = field.Char(related='status.name', store=True, copy=False)
and then in your xml you put this:
widget="badge" decoration-success = " status_name == ' Done' "
Hope this helps.
Upvote if it does.
Hi Ibrahim,
Thanks for the answer. I was aware of using a char field to hold the value, but I was trying to figure out if there was any option to use the information from the Many2One field to use on the Badge Attribute. I dont know if it is even possible.
Hi Ibrahim,
I couldnt find any better alternative. Im going to close it and use your answer. I was trying to avoid creating more fields.
Thanks
Your XPath override should look like this
<xpath expr="//field[@name='status']" position="attributes">
<attribute name="widget">badge</attribute>
<attribute name="decoration-success">status == 'Done'</attribute>
<xpath>
Enjoying the discussion? Don't just read, join in!
Create an account today to enjoy exclusive features and engage with our awesome community!
Sign upRelated Posts | Replies | Views | Activity | |
---|---|---|---|---|
|
2
Aug 20
|
2900 | ||
|
0
Feb 16
|
5254 | ||
|
0
Oct 21
|
3616 | ||
|
1
Apr 16
|
3975 | ||
|
1
Jan 25
|
3258 |
I had to remove the symbols < > / because it was modifing the description. Sorry for that
Status is a ManytoOne field. It works with a selection field, but it doesnt with a ManytoOne field. I tried some alternatives like:
status.name == 'Done'
status.id == 13
But i get an error with any of these
Decoration in Tree View: https://learnopenerp.blogspot.com/2022/05/decorate-text-bold-italic-colors-field-in-tree-view-column-odoo-15.html