def validate_long_slug(self): self._create_mpath_long_slug() filters = dict(long_slug=self.long_slug) if self.id: filters['id__ne'] = self.id exist = self.__class__.objects(**filters) if exist.count(): if current_app.config.get('SMART_SLUG_ENABLED', False): self.slug = "{0}-{1}".format(self.slug, random.getrandbits(32)) self._create_mpath_long_slug() else: raise db.ValidationError( _l("%(slug)s slug already exists", slug=self.long_slug))
def clean(self): homepage = Channel.objects(is_homepage=True) if self.is_homepage and homepage and not self in homepage: raise db.ValidationError(_l("Home page already exists")) super(Channel, self).clean()
def clean(self): [cls.clean() for cls in self.classes] if not self.is_unique_slug(self.classes): raise db.ValidationError("Classroom slugs duplicated") if not self.is_unique_slug(self.variants): raise db.ValidationError("Variants slugs duplicated")