PHP: не уверен, как смоделировать связь с базой данных - PullRequest
0 голосов
/ 26 ноября 2010

В моей базе данных есть таблица «Избранное» и таблица «Деятельность». Я использую Zend Framework и у меня есть класс, моделирующий обе таблицы. Теперь, когда кто-то добавляет статью в избранное, я должен добавить строку в таблицу действий.

Самый очевидный способ сделать это - создать методы addActivity и addFavorite в соответствующих классах таблиц, и всякий раз, когда статья становится предпочтительной, я вызываю метод addActivity. Хотя это очень просто, для меня это не кажется естественным.

Есть ли у вас какие-либо предложения относительно лучшего способа сделать это?

1 Ответ

0 голосов
/ 26 ноября 2010

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

Activity::addNew($favouriteID, Activity::FAVOURITE);

и да, это выглядит неестественно. Боюсь, вы говорите об аспектной ориентации ...

Еще один способ сделать это (но не выбрал его по другим причинам) - добавить триггер в базу данных, который заполнит активность, каждый раз, когда был добавлен любимый. Я не хотел идти туда, потому что это преувеличено в литературе, что вскоре вызывает выйти из-под контроля. Это зависит от того, сколько логики приложения вы хотите иметь на уровне базы данных ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...