Ir al contenido
Menú
Se marcó esta pregunta
2 Respuestas
7194 Vistas

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
Mejor respuesta

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
Mejor respuesta

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

Publicaciones relacionadas Respuestas Vistas Actividad
0
jun 24
1503
0
mar 24
1609
1
ene 24
1782
2
ene 24
1980
1
feb 25
3123