From 604598292fa99546b34422613a8f6399e1a55c61 Mon Sep 17 00:00:00 2001 From: Mqdd Date: Wed, 31 Dec 2025 21:54:08 +0700 Subject: fix check duplicate --- indoteknik_custom/models/keywords.py | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/indoteknik_custom/models/keywords.py b/indoteknik_custom/models/keywords.py index d7cfc810..f6c1cf6e 100644 --- a/indoteknik_custom/models/keywords.py +++ b/indoteknik_custom/models/keywords.py @@ -66,15 +66,18 @@ class Keywords(models.Model): if not record.name: record.name = record.keywords - # def check_already_exist(self): - # model = self.env['keywords'] - # for record in self: - # match = model.search([ - # ('keywords', '=', record.keywords), - # ('category_id.id', '=', record.category_id.id) - # ]) - # if match: - # raise UserError("Tidak bisa create karena keywords sudah dipakai") + @api.constrains('keywords', 'category_id') + def check_already_exist(self): + for record in self: + if not (record.keywords and record.category_id): + continue + match = self.search([ + ('id', '!=', record.id), + ('keywords', '=', record.keywords), + ('category_id', '=', record.category_id.id) + ], limit = 1) + if match: + raise UserError("Tidak bisa create karena keywords sudah dipakai") def copy(self): raise UserError("Duplicate Record not allowed") -- cgit v1.2.3