| REPOSITORY | |
|---|---|
| REPOSITORY | OCA/product-variant |
| GIT | |
| GIT | https://github.com/OCA/product-variant.git |
| GIT FOLDER | |
| GIT FOLDER | https://github.com/OCA/product-variant/tree/18.0/product_variant_change_attribute_value |
| VERSION | |
| VERSION | 1.0.0 |
| CATEGORY | |
| CATEGORY | Product Variant |
| LICENSE | |
| LICENSE | AGPL-3 |
| APPLICATION | |
| APPLICATION | No |
| AUTO-INSTALLABLE | |
| AUTO-INSTALLABLE | No |
| AUTHORS | |
| AUTHORS | Odoo Community Association (OCA), Camptocamp SA |
| MAINTAINERS | |
| MAINTAINERS | Odoo Community Association (OCA), Camptocamp SA |
| COMMITTERS | |
| COMMITTERS | Weblate, OCA-git-bot, oca-ci, Khôi (Kiên Kim) |
| WEBSITE | |
| WEBSITE | https://github.com/OCA/product-variant |
| LAST TRACKING UPDATE | |
| LAST TRACKING UPDATE | 2026-07-06 19:30:13 |
| ODOO DEPENDENCIES | |
| ODOO DEPENDENCIES |
odoo/odoo: - product - base - base_setup - web - bus - web_tour - html_editor - uom |
| PYTHON DEPENDENCIES | |
| PYTHON DEPENDENCIES | Not have |
| SYSTEM DEPENDENCIES | |
| SYSTEM DEPENDENCIES | Not have |
| DESCRIPTION | |
| DESCRIPTION | In standard Odoo there is no way to change the attribute values assigned to a product variant. This module adds a wizard to change or remove attribute values on all product variant selected. When an attribute value is removed from all variants of a template, it will also be removed from the configuration of the template. |
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
view_product_variant_update_attribute_wizard |
Product Variant Update Attribute | variant.attribute.value.wizard | form | New |
attribute_action
Selection
default='do_nothing'
required=True
selection='_selection_action'
attribute_id
Many2one → product.attribute
comodel_name='product.attribute'
ondelete='cascade'
related='product_attribute_value_id.attribute_id'
store=True
product_attribute_value_id
Many2one → product.attribute.value
comodel_name='product.attribute.value'
ondelete='cascade'
replaced_by_id
Many2one → product.attribute.value
comodel_name='product.attribute.value'
domain="[('id', 'in', selectable_attribute_value_ids)]"
ondelete='cascade'
string='Replace with'
selectable_attribute_value_ids
Many2many → product.attribute.value
comodel_name='product.attribute.value'
compute='_compute_selectable_attribute_value_ids'
No public methods.
attribute_value_ids
Many2many → product.attribute.value
comodel_name='product.attribute.value'
attributes_action_ids
Many2many → variant.attribute.value.action
comodel_name='variant.attribute.value.action'
relation='variant_attribute_wizard_attribute_action_rel'
available_attribute_ids
Many2many → product.attribute
comodel_name='product.attribute'
filter_attribute_id
Many2one → product.attribute
comodel_name='product.attribute'
domain="[('id', 'in', available_attribute_ids)]"
product_ids
Many2many → product.product
comodel_name='product.product'
product_template_count
Integer
readonly=True
product_variant_count
Integer
readonly=True
action_apply(self)
default_get(self, fields_list)