Обычай доктрины поведения - PullRequest
0 голосов
/ 06 декабря 2011

По сути, мне нужно создать поведение, которое добавляет таблицу и отношение «один ко многим» к отношению. Например:

Event:
  columns: ~
  actAs:
     Recurrent: ~

Что будет таким же, как:

Event:
  columns: ~

EventRecurrent:
  columns:
    event_id: integer(4)
  relations:
    Event: 
      local: event_id
      foreign: id
      foreignAlias: RecurrentDates

Это то же самое, что и шаблон I18n, хотя он и не генерирует файлы, тогда как мне нужно сгенерировать классы EventRecurrent и EventRecurrentTable .

1 Ответ

0 голосов
/ 06 декабря 2011

Я думаю, что это так сложно, вы не найдете здесь ответа о переполнении стека: вам нужно очень глубокое понимание того, как работает Doctrine для достижения этой цели.

Поскольку вы хотите иметь возможность изменять таблицы, я думаю, что вы быстрее, просто определив модели в вашей модели.

Если это неприемлемо для вашего случая использования, я бы просто окунулся в это: вам понадобится ваш собственный Doctrine_Template, вероятно, Doctrine_Template_I18n хорошее место для начала. Этот Doctrine_Template_I18n в свою очередь использует класс Doctrine_I18n, который расширяет Doctrine_Record_Generator. Если вы посмотрите на параметры этого генератора, есть опция «generateFiles»: установка в true, вероятно, делает то, что вы хотите. Но вам понадобится много проб и ошибок, вероятно:)

...