an abundance of strawberries

Odoo module upgrades, done for you

Error: "attrs" is not a valid attribute on field โ€” Odoo 17

The exact error โ€” usually in this shape โ€” means your views still use the pre-17 syntax:

odoo.tools.convert.ParseError: while parsing my_module/views/order_views.xml:24
Since 17.0, the "attrs" and "states" attributes are no longer used.
View: order.form.inherit in my_module/views/order_views.xml

Every occurrence in every XML file has to be rewritten to the new inline-expression syntax (invisible=, readonly=, required=, column_invisible=). See the full before/after on our attrs/states fix page.

Send us the module. This is the most common Odoo 17 upgrade failure and we fix it routinely. Try the ported module live, then $50 to download.

Try the working result before you pay a cent. No signup to get started.

Looking to upgrade your whole Odoo from one version to the next? Odoo Upgrade Done handles the database, every module, and the move end to end โ†’

Common questions

Can I just delete the attrs attribute to make the error go away?

The view will load, but every conditional visibility/required rule silently disappears โ€” fields show when they shouldn't. Each attrs domain needs translating to an equivalent Python expression.