According the documentation the @api.constrains will invoke the method decorated everytime the record gets modified so it will be invoked on create , update or any method who modify the data.
ref: https://www.odoo.com/documentation/9.0/reference/orm.html#openerp.api.constrains
So, you can override the update method and add your validation at the start of the method, you have to write the code in the same py file of your class, if you're using a stock model, i suggest you create a model who inherits from the stock model:
def method_name(self):
#DO THE VALIDATION
if (validation== True):
#DO THE ACTION
When you override a method, the new method will only work in that way for that model.