Laravel: выполнение некоторых задач при каждой вставке / обновлении при использовании Query Builder или Eloquent ORM

Проблема

Я хотел бы автоматически добавитьcreated_by а такжеmodified_by поля для каждой вставки / обновления таблицы базы данных в Laravel 4, независимо от того, использую ли я Eloquent или Query Builder. Однако не во всех моих таблицах есть эти поля, поэтому любое решение должно будет проверить наличие этих столбцов перед добавлением.

Попытка решения

Я продлилIlluminate\Database\Eloquent\Model класс и написал метод перезаписиsave() чтобы добавить дополнительные поля метаданных для каждой сохраненной записи.

Это нормально, за исключением того, что если я выполняю вставку с помощью Query Builder, то это обходится. Глядя наModel Класс, похоже, что операции с базой данных на самом деле выполняются с помощью построителя запросов.

Я посмотрел наIlluminate\Database\Query\Builder модель и, похоже, я мог бы написать методы перезаписи дляinsert() а такжеupdate().

Это разумный способ выполнить какую-то задачу для каждой вставки / обновления, или я столкнусь с проблемой позже?

Ответы на вопрос(5)

Ваш ответ на вопрос