From 21d51accec69369debd5f5f860daf18123d885c8 Mon Sep 17 00:00:00 2001 From: Roberto Rosario Date: Mon, 27 Oct 2014 23:21:13 -0400 Subject: [PATCH] Make sure the metadata being added is allowed --- mayan/apps/metadata/models.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/mayan/apps/metadata/models.py b/mayan/apps/metadata/models.py index 6c06809a96..6097037b4b 100644 --- a/mayan/apps/metadata/models.py +++ b/mayan/apps/metadata/models.py @@ -1,5 +1,6 @@ from __future__ import absolute_import +from django.core.exceptions import ValidationError from django.db import models from django.utils.translation import ugettext_lazy as _ @@ -51,6 +52,12 @@ class DocumentMetadata(models.Model): def __unicode__(self): return unicode(self.metadata_type) + def save(self, *args, **kwargs): + if self.metadata_type not in self.document.document_type.metadata.all(): + raise ValidationError(_('Metadata type is not valid for this document type.')) + + return super(DocumentMetadata, self).save(*args, **kwargs) + class Meta: verbose_name = _(u'Document metadata') verbose_name_plural = _(u'Document metadata')