Skip to Content
Menú
This question has been flagged
2 Respostes
7193 Vistes

Dear,

if i want to create two products with same product name, it's been created in odoo 11.0 E, so if i want to make a restriction so no one can create a same product again, is it possible.

many thanks

Avatar
Descartar
Best Answer

Hi Muhammad,

Yes, this is possible. You can create filters or restrictions in any way that you like to prevent these kind of behaviours. You could for example override the create function and then search in the database for a product with the same name. If it is the same name you can show a warning saying that there is already a product with this name and that it already exists. A raw example:

@api.model def create(self, values): record = super(YourClass, self).create(values) matching_products = self.env['product.product'].search([('name', '=', self.name)]) if len(matching_products) > 1: raise Warning(_('You already have a product with this name. Please don't recreate it'))   return record

Regards,
Yenthe

Avatar
Descartar
Best Answer

Hi, you can also use the sql_constraints.

eg:
name = fields.Char(string="Name")
_sql_constraints = [('unique_name', 'UNIQUE(name)', 'name must be unique')]

Thank you

Avatar
Descartar
Autor

hi, avinash,

is it possible without any coding

thanks

Related Posts Respostes Vistes Activitat
0
de juny 24
1501
0
de març 24
1599
1
de gen. 24
1782
2
de gen. 24
1978
1
de febr. 25
3121