跳至內容
選單
此問題已被標幟
2 回覆
7262 瀏覽次數

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

頭像
捨棄
最佳答案

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

頭像
捨棄
最佳答案

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

頭像
捨棄
作者

hi, avinash,

is it possible without any coding

thanks

相關帖文 回覆 瀏覽次數 活動
1
8月 25
186
0
6月 24
1617
0
3月 24
1693
1
1月 24
1872
2
1月 24
2093