我正在尝试在 task 生成的模块中添加一些额外的逻辑update
和操作。我在这里阅读并看到我可以在. 因为调用方法然后我认为最好是覆盖它而不是但不知道如何。我需要添加的代码是这样的:delete
doctrine:generate-admin
executeUpdate()
executeDelete()
/application/mymodule/actions/actions.class.php
executeUpdate()
proccessForm()
executeUpdate()
$q = Doctrine_Core::getTable('SdrivingEmpresa')
->createQuery('a')
->where('idempresa = ?', $request->getParameter('idempresa'))
->execute();
$file = new sfFilesystem();
$file->remove(sfConfig::get('sf_upload_dir') . '/' . $q[0]->getLogotipo());
我executeDelete()
通过复制生成的缓存编码并编写我的逻辑来做到这一点,如下所示:
public function executeDelete(sfWebRequest $request) {
$request->checkCSRFProtection();
$this->dispatcher->notify(new sfEvent($this, 'admin.delete_object', array('object' => $this->getRoute()->getObject())));
$q = Doctrine_Core::getTable('SdrivingEmpresa')
->createQuery('a')
->where('idempresa = ?', $request->getParameter('idempresa'))
->execute();
$file = new sfFilesystem();
$file->remove(sfConfig::get('sf_upload_dir') . '/' . $q[0]->getLogotipo());
if ($this->getRoute()->getObject()->delete()) {
$this->getUser()->setFlash('notice', 'The item was deleted successfully.');
}
$this->redirect('@sdriving_empresa');
}
但我坚持这是不对的,所以我的问题是,我应该对 processForm() 做同样的事情还是存在更好的方法来做到这一点?有什么建议或帮助吗?