Prestashop ModuleAdminController使用简单的模板

时间:2013-12-02 22:54:50

标签: prestashop prestashop-1.5

试图弄清楚为什么像下面这样的东西不起作用。首选项管理部分中有一个指向此控制器的选项卡,但在转到它时它始终输出一个空白页面。我尝试了几件事,但以下基本上是我需要的。没有MODEL ......我只需要这个来获取postProcessing的上传文件......

控制器文件......

class AdminAstroImporterController extends ModuleAdminController {

    public function initContent() {
        parent::initContent();
        return $this->display(__FILE__, 'import.tpl');

    }

    public function postProcess() {
        //do something here

    }
}

2 个答案:

答案 0 :(得分:2)

看起来你可以通过执行如下所示的initContent()函数所示来覆盖实际的内容输出。 smarty assign中的'content'可以是您自己生成的任何html。

class AstroImporterAdminController extends AdminController {
public function __construct() {
    parent::__construct();

    //load current settings
    $this->data = unserialize(Configuration::get('ASTRO_IMPORTER'));
}

public function initContent() {
    parent::initContent();

    $this->show_toolbar = false;
    $this->context->smarty->assign(array(
        'content' => $this->renderSettings().$this->renderForm().$this->displayFields(),
    ));
}

答案 1 :(得分:0)

我发现这有效:

public function renderList()
{
    global $currentIndex, $cookie;

    $smarty = $this->context->smarty;

    $smarty->assign('currentIndex', $currentIndex);


    return $this->context->smarty->fetch($this->getTemplatePath().'/main.tpl');
}

虽然它很脏,但它看起来比Amb3rL4nn更清晰。

在v1.4中创建一个标签非常容易(并且很容易找到文档)我想知道为什么他们改变它并且没有提供文档。