我是Prestashop模块开发的新手。 我正在尝试构建amy first prestashop模块[ref:http://doc.prestashop.com/display/PS16/Creating+a+first+module]。 这是我的代码
<?php
if(!defined('_PS_VERSION_'))
exit();
class MyModule extends Module
{
public function _construct()
{
$this->name = 'mymodule';
$this->tab = 'front_office_features';
$this->version = '1.0.0';
$this->author = 'Rohit Prakash';
$this->need_instance = 0;
$this->ps_versions_compliancy = array('min' => '1.6', 'max' => _PS_VERSION_);
$this->bootstrap = true;
parent::__construct();
$this->displayName = $this->l('My module');
$this->description = $this->l('Description of my module.');
$this->confirmUninstall = $this->l('Are you sure you want to uninstall?');
if (!Configuration::get('MYMODULE_NAME'))
$this->warning = $this->l('No name provided');
}
public function install()
{
if (!parent::install())
return false;
return true;
}
public function uninstall()
{
if (!parent::uninstall())
return false;
return true;
}
}
当我尝试从后台安装mymodule时收到错误信息
&#34;错误! 无法安装模块mymodule。不幸的是,该模块没有返回其他细节。&#34;
请帮助我!!答案 0 :(得分:0)
你有错误。而不是_construct()
它应该是__construct()
。
答案 1 :(得分:0)
我来晚了一点,但这对我来说很有效。
首先,从模块表中删除最后一行。
如果表前缀为ps
,而模块名称为mymodule
,它将存储在ps_module
表中,列name
的值为mymodule
。
DELETE FROM `ps_module` WHERE `name` = "mymodule";
接下来,从授权角色表中删除角色。
模块安装程序会自动为模块添加CRUD角色。从authorization_role
表中删除它们。
再次安装模块。
环境:PHP7.2,Prestashop v1.7.6.4