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