В Ruby on Rails каждая сущность модели имеет метод перехвата validate_on_ что-то , который вызывается до того, как сущность действительно сохраняется в базе данных. Я хотел бы, чтобы подобный функционал в Google App Engine. Мне известно, что вы можете выполнять проверку отдельных свойств, передавая им аргументы в их объявлениях. Однако, если я хочу сделать больше проверки, чем это, есть ли место в объявлении класса модели, в котором я могу это сделать?
Кроме того, в том же духе, иногда сущность нуждается в модификации, прежде чем она фактически сохраняется в базе данных. Мне может понадобиться изменить (трансформировать) сущность прямо перед тем, как она действительно будет записана в базу данных. Есть ли место в объявлении класса сущности, которое позволило бы мне сделать это?
Мне известно, что я могу поместить эти преобразования / проверки вне класса. Но это вряд ли похоже на хороший ОО дизайн. Похоже, что для такого рода потребностей в модели должны быть автоматически подключены методы ловушек.
Итак, мой вопрос: каков наиболее подходящий способ проверки и преобразования сущностей до их сохранения?