2010-10-12 5 views
0

В настоящее время я разрабатываю приложение, модель домена которого должна предотвращать дублирование объектов в соответствии с равенством или не с некоторыми полями объектов.Сохранение метода переопределения и управления исключениями

Итак, я собираюсь обработать это сравнение по методу сохранения класса: если какой-либо существующий объект имеет некоторые свойства, равные подлежащему сохранению объекту, следует сохранить сохранение.

Я думаю иметь дело с этой ситуацией с Исключениями, которые будут брошены и пойманы в действии, чтобы при необходимости представить сообщение пользователю. К сожалению, мои знания об Исключениях не совсем хорошие и более: было бы это решение наиболее адекватным?

ORM, который я использую, является Доктриной.

ответ

0

Почему вы не создать уникальный индекс на несколько столбцов в вашей схеме: Это пример взят из Doctrine's manual:

MultipleIndexTest: 
    columns: 
    name: string 
    code: string 
    age: integer 
    indexes: 
    myindex: 
     fields: 
     name: 
      sorting: ASC 
      length: 10 
     code: - 
     type: unique 
+0

Привет! Честно говоря, я не рассматривал тот подход, который вы упомянули, но, похоже, он также действителен. У меня есть только одно сомнение: как я могу настроить правильные сообщения для пользователя, с помощью предлагаемого вами решения, нет необходимости обращаться с контроллером и просматривать? –

+0

Doctrine создаст исключение, которое вы можете обработать с помощью блока try-catch. – Maerlyn