Prestashop - 在管理员中找不到控制器
Prestashop - Controller Not Found in admin
我正在开发一个简单的模块,但我无法成功地使管理控制器工作。
这是我的模块的目录结构:
这是 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;
选项卡似乎安装正确:
但是当我打开它时,它显示一条错误消息:
http://dev.prestashop.com/admin123asdf/index.php?controller=AdminPayments&token=52dbfa9a1a6c3935fd3cbb1276bcbedb
为什么会这样?我该如何调试?
你的控制器文件名应该是AdminPayments.php
.
并更改此行:$this->module = $this->name;
为这一行:$tab->module = $this->name;
祝你好运。
installTab
函数中有错字。应该是:
$tab->module = $this->name;
而不是
$this->module = $this->name;
我正在开发一个简单的模块,但我无法成功地使管理控制器工作。
这是我的模块的目录结构:
这是 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;
选项卡似乎安装正确:
但是当我打开它时,它显示一条错误消息:
http://dev.prestashop.com/admin123asdf/index.php?controller=AdminPayments&token=52dbfa9a1a6c3935fd3cbb1276bcbedb
为什么会这样?我该如何调试?
你的控制器文件名应该是AdminPayments.php
.
并更改此行:$this->module = $this->name;
为这一行:$tab->module = $this->name;
祝你好运。
installTab
函数中有错字。应该是:
$tab->module = $this->name;
而不是
$this->module = $this->name;