编程语言
首页 > 编程语言> > PHP-Prestashop-在管理员中找不到控制器

PHP-Prestashop-在管理员中找不到控制器

作者:互联网

我正在开发一个简单的模块,但是无法成功使管理控制器正常工作.

这是我的模块的目录结构:
enter image description here

这是AdminPaymentsController.php文件:

<?php

class AdminPaymentsController extends  ModuleAdminController {

}

我使用以下功能在模块安装上创建了一个选项卡:

public function installTab($parent, $class_name, $name) {
    $tab = new Tab();
    $tab->id_parent = (int)Tab::getIdFromClassName($parent);
    $tab->name = array();

    foreach (Language::getLanguages(true) as $lang) {
        $tab->name[$lang['id_lang']]  = $name;
    }

    $tab->class_name = $class_name;
    $this->module = $this->name;
    $tab->active = 1;

    return $tab->add();
}

并这样称呼它:

    if (!$this->installTab('AdminCatalog', 'AdminPayments', 'Payments Management')) return false;

该选项卡似乎已正确安装:

enter image description here

但是当我打开它时,它显示一条错误消息:

enter image description here

http://dev.prestashop.com/admin123asdf/index.php?controller=AdminPayments\u0026amp;ken=52dbfa9a1a6c3935fd3cbb1276bcbedb

为什么会这样呢?我该如何调试?

解决方法:

您的控制器文件名应为AdminPayments.php.

并更改此行:$this-> module = $this-> name;为此:$tab-> module = $this->名称;

祝好运.

标签:prestashop,prestashop-1-6,php
来源: https://codeday.me/bug/20191111/2022988.html