Создание исключения - это способ сообщить о ошибке программы (ошибка в «бизнес-логике»), о чем вы говорите. Вы можете просто вызвать исключение, так как pastylegs предлагает (быть в курсе, что SomeException просто заполнитель):
from django.core.exceptions import SomeException
def save(self, *args, **kwargs):
if <some condition>:
raise SomeException('your message here')
Вы можете найти доступные исключения F Джанго здесь: https://docs.djangoproject.com/en/1.3/ref/exceptions/, плюс вы можете также использовать стандартные исключения питона, для которого вы можете найти здесь документацию: http://docs.python.org/library/exceptions.html
Я бы порекомендовал вам найти Исключение, описывающее вашу проблему, или вы будете очень смущены, если эта ошибка проявится через несколько недель, когда вы не можете вспомнить, что именно у вас есть делали сейчас.
Ваша бизнес-логика (будь то в модели, диспетчере модели или где) может просто поднять исключение, которое можно поймать на уровне представления и значительную ошибку, сообщаемую пользователю (или некоторую обработку ошибок). –