Я думаю, что наилучшим способом действий было бы использование большей части логики в ваших моделях и поддержание ваших контроллеров. Ваши модели могут расширять ваш собственный класс, в котором есть общие операции.
Вы также можете написать свой собственный класс, он не должен быть помощником, и использовать его в контроллерах для сохранения сущности:
$saver = new My_Editing_Class();
$saver->edit("account",$this->getRequest()->getPost()); // Editing "account" with the POST data.
Затем вы делаете свою магию внутри "My_Editing_Class".