0
我试图创建一个自定义模块的Magento 2,我得在/Setup/InstallSchema.phpMagento的2 - 错误的定制模式创建数据库表
当定义模式的点运行'php bin/magento setup:upgrade'我得到错误: 调用未定义的函数Test/Connector/Setup/getConnection()
该模块已启用并正确显示在配置文件中。我试图运行的模式文件是:
<?php
namespace Test\Connector\Setup;
use Magento\Framework\Setup\InstallSchemaInterface;
use Magento\Framework\Setup\ModuleContextInterface;
use Magento\Framework\Setup\SchemaSetupInterface;
use Magento\Framework\DB\Ddl\Table;
class InstallSchema implements InstallSchemaInterface
{
public function install(SchemaSetupInterface $setup, ModuleContextInterface
$context) {
$installer = $setup;
$installer->startSetup();
$tableName = $installer->getTable('test_connector_settings');
if ($installer->getConnection()->isTableExists($tableName) != true) {
$table = $installer->getConnection()
->newTable($installer->getTable('ipos_connector_settings'))
->addColumn('id', Table::TYPE_SMALLINT, null, ['identity'=> true, 'nullable'=>false, 'primary'=>true], 'ID')
->addColumn('api_url', Table::TYPE_TEXT, 255, ['nullable'=>true], 'API URL')
->addColumn('api_user', Table::TYPE_TEXT, 100, ['nullable'=>false], 'API User Name')
->addColumn('api_password', Table::TYPE_TEXT, 100, ['nullable'=>false], 'API Password');
$installer-getConnection()->createTable($table);
}
$installer->endSetup();
}
}
由于提前,
谢谢Jitendra,虽然我现在感觉有点尴尬。我非常关注getConnection()的前两个实例,我从来没有像第三个实例那样。获得的教训,解决问题的第一步是使用验证程序! – Steve