From 348e5ae06f0ea7db7ba2189c91b9772c30883d75 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Krier?= Date: Mon, 22 Jun 2015 16:58:27 +0200 Subject: [PATCH] Use Constraint instance in ModelSQL._sql_constraints issue4814 review15491002 --- asset.py | 5 +++-- invoice.py | 5 +++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/asset.py b/asset.py index a7a96b05bf..adf9a36b2f 100644 --- a/asset.py +++ b/asset.py @@ -8,7 +8,7 @@ from dateutil import rrule from itertools import groupby from cached_property import cached_property -from trytond.model import Workflow, ModelSQL, ModelView, fields +from trytond.model import Workflow, ModelSQL, ModelView, fields, Unique from trytond.pyson import Eval, Bool, If from trytond.pool import Pool from trytond.transaction import Transaction @@ -170,8 +170,9 @@ class Asset(Workflow, ModelSQL, ModelView): @classmethod def __setup__(cls): super(Asset, cls).__setup__() + table = cls.__table__() cls._sql_constraints = [ - ('invoice_line_uniq', 'UNIQUE(supplier_invoice_line)', + ('invoice_line_uniq', Unique(table, table.supplier_invoice_line), 'Supplier Invoice Line can be used only once on asset.'), ] cls._error_messages.update({ diff --git a/invoice.py b/invoice.py index caa41bea0d..5978c12bb0 100644 --- a/invoice.py +++ b/invoice.py @@ -1,6 +1,6 @@ # This file is part of Tryton. The COPYRIGHT file at the top level of this # repository contains the full copyright notices and license terms. -from trytond.model import fields +from trytond.model import fields, Unique from trytond.pyson import Eval from trytond.pool import Pool, PoolMeta @@ -27,8 +27,9 @@ class InvoiceLine: @classmethod def __setup__(cls): super(InvoiceLine, cls).__setup__() + table = cls.__table__() cls._sql_constraints += [ - ('asset_uniq', 'UNIQUE(asset)', + ('asset_uniq', Unique(table, table.asset), 'Asset can be used only once on invoice line!'), ]