我在哪里以及如何覆盖 Joomla 3.0 自定义组件中的保存方法?
现状:
自定义管理员组件。
我有一个 ListView ,显示存储在表中的所有人。 单击一个条目,我会进入加载表单的详细 View ,并且可以编辑它的字段。
保存时,值存储在数据库中。这一切都很好。但是,....
点击保存时,我希望在将字段存储到数据库之前对其进行修改。如何覆盖保存功能以及在哪里?我一直在搜索这个论坛并安静地搜索了一下以找到实现它的方法。任何人给我一个简单的例子或指出我正确的方向吗?
谢谢。
最佳答案
只需为想要知道问题本身答案的任何人添加此内容 - 如果您明确希望覆盖保存功能,则此方法有效。但是,看看如何操作值的实际解决方案!
你在 Controller 中覆盖它,像这样:
/**
* save a record (and redirect to main page)
* @return void
*/
function save()
{
$model = $this->getModel('hello');
if ($model->store()) {
$msg = JText::_( 'Greeting Saved!' );
} else {
$msg = JText::_( 'Error Saving Greeting' );
}
// Check the table in so it can be edited.... we are done with it anyway
$link = 'index.php?option=com_hello';
$this->setRedirect($link, $msg);
}
此处有更多详细信息:Joomla Docs - Adding Backend Actions
关于joomla - 如何覆盖组件中的 save() 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17539188/