1

我目前正在覆盖 Joomla 3 的 deleteList,如下所示:

public function delete(){
    if(!defined('DS')) define('DS', DIRECTORY_SEPARATOR);
    $path = JPATH_ROOT;
    $path = JPath::clean($path. DS ."images". DS ."menu_slider". DS );

    foreach(glob($path.'*/penguins.*') as $image){
        unlink($image);
    }
    return parent::delete();
}

在一个或多个项目中,有一个与之关联的图像,因此数据库具有以下内容:

id title image

所以我的问题真的是我如何在删除时将图像名称分配给一个或多个项目?

4

1 回答 1

1

可能您知道控制器触发模型方法删除,然后它加载删除条目的 JTable。我的建议是在 /administrator/components/com_YourExtension/tables/YourTableFile.php 中使用以下方法扩展 JTable 类:

public function delete($pk = null)
{
    jimport( 'joomla.filesystem.file' );
    $path = JPath::clean(JPATH_ROOT . "/images/menu_slider/");
    if (JFile::exists($path . $this->image)
        JFile::delete($path . $this->image);

    return parent::delete($pk);
}
于 2013-10-15T08:29:43.307 回答