我已经覆盖了Joomla 2.5中的SAVE()函数
class footballModelPlayer extends JModelAdmin {
public function getTable($type = 'Player', $prefix = 'footballTable', $config = array()) {
return JTable::getInstance($type, $prefix, $config);
}
public function save($data) {
// some code here
$table_one->bind($data);
$table_one->save($data);
return true;
}
问题是当我保存新数据或编辑现有数据时,它会将我重定向到New Empty From。
如果我用return $data->player_id
替换最后一行,它会将我重定向到加载数据但显示错误的相同表单
Save failed with the following error:
我可以通过显示成功消息来保存/更新记录,并保留在加载到其中的数据的同一表格上吗?
答案 0 :(得分:0)
您的模型中缺少2个功能:
public function getForm($data = array(), $loadData = true){
// Get the form.
$form = $this->loadForm('com_football.Player', 'Player', array('control' => 'jform', 'load_data' => $loadData));
if (empty($form))
{
return false;
}
return $form;
}
和
protected function loadFormData(){
$data = JFactory::getApplication()->getUserState('com_football.edit.Player.data', array());
if (empty($data))
{
$data = $this->getItem();
}
return $data;
}
实施它们,您的数据将神奇地出现。顺便说一下,您不需要覆盖save方法,因为您正在执行默认操作。