Hello, I would like to create a checkbox that makes another float field invisible or visible. I tried using the "invisible" attribute but it doesn't work. Please help me.
Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:
- CRM
- e-Commerce
- Accounting
- Inventory
- PoS
- Project management
- MRP
This question has been flagged
Try this code:
<field name="your_float_field" attrs="{'invisible': [('your_checkbox_field', '=', True)]}"/>
.
Here is the code in my python file
class InheritSaleOrder(models.Model):
_inherit = 'sale.order'
overall_discount = fields.Boolean('Remise globale')
amount_overall_discount = fields.Float(string='Montant de la remise globale', invisible=True)
In my xml file:
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="view_overall_discount" model="ir.ui.view">
<field name="name">view.order.form.inherit</field>
<field name="model">sale.order</field>
<field name="inherit_id" ref="sale.view_order_form"/>
<field name="arch" type="xml">
<xpath expr="//form//sheet//notebook" position="after">
<field name="overall_discount"/>
<field name="amount_overall_discount"
attrs="{'invisible': [('overall_discount', '=', False)]}"/>
</xpath>
</field>
</record>
</odoo>
When I run it, it doesn't show the text "Remise globale" and "Montant de la remise globale" in the view.
To see label (name of field) of your fields you must insert them inside <group></group> tag. Or add label tag seperatly:
<label for="your_field_name"/>
I solve it by putting all my fields in a group. Thanks for your help.
Yes that's what I did, thanks.
Enjoying the discussion? Don't just read, join in!
Create an account today to enjoy exclusive features and engage with our awesome community!
Sign up
share code, what you have tried?