diff options
| author | Mqdd <ahmadmiqdad27@gmail.com> | 2025-12-19 15:10:58 +0700 |
|---|---|---|
| committer | Mqdd <ahmadmiqdad27@gmail.com> | 2025-12-19 15:10:58 +0700 |
| commit | 2e3e5853ce9fc3e9568eea3a673c2a154b8de9da (patch) | |
| tree | 5d3fb1695b140dc494a9d5252e6a9caa3fbaa855 | |
| parent | 41e5e8defc0d0b928e43307f72887b0789ffb589 (diff) | |
<Miqdad> fix duplicate keywords
| -rw-r--r-- | indoteknik_custom/models/keywords.py | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/indoteknik_custom/models/keywords.py b/indoteknik_custom/models/keywords.py index 41deea3e..fedaa180 100644 --- a/indoteknik_custom/models/keywords.py +++ b/indoteknik_custom/models/keywords.py @@ -53,16 +53,15 @@ class Keywords(models.Model): if not record.name: record.name = record.keywords - @api.constrains('keywords', 'name') + @api.depends('keywords') def check_already_exist(self): model = self.env['keywords'] for record in self: - match = model.search([ '|', - ('name', '=', record.name), - ('keywords', '=', record.keywords) + match = model.search([ + ('keywords', 'ilike', record.keywords) ]) if match: - raise UserError("Tidak bisa create/write/duplicate karena keywords sudah dipakai") + raise UserError("Tidak bisa create karena keywords sudah dipakai") def copy(self): raise UserError("Duplicate Record not allowed") @@ -159,11 +158,13 @@ class Keywords(models.Model): @api.model def create(self, vals): record = super().create(vals) + self.check_already_exist() # record.generate_products() return record def write(self, vals): result = super().write(vals) + self.check_already_exist() # if not self.env.context.get("skip_generate") and not self.skip: # self.generate_products() return result |
