如何使用安装脚本在Magento中的数据库中创建表

时间:2017-11-12 16:32:27

标签: magento magento-1.7 magento-1.9 magento2

我是Magento的新手。我正在尝试使用安装脚本在数据库中创建一个表。网站已被HOSTED。我跟着几个教程。他们看起来都一样。我跟着每一步,但桌子不是有人告诉我哪里出错了? 这些是我接下来的步骤。 首先,我在app / code中创建了一个名为Sitepoint的文件夹。然后我在Sitepont中创建了一个Articles文件夹。这就是它的样子

应用程序/代码/本地/ Sitepoint /文章

然后我在sitepoint

中创建了etc文件夹

应用程序/代码/本地/ Sitepoint /文章/等

etc floder由config.xml文件组成。它包含以下代码。

<global>
    <models>
        <articles>
            <class>Sitepoint_Articles_Model</class> <!-- Model class files -->     
            <resourceModel>articles_mysql4</resourceModel> <!--Resource model -->
        </articles>
        <articles_mysql4>
            <class>Sitepoint_Articles_Model_Mysql4</class>
            <entities>
                <articles>
                    <table>articles</table>  <!-- Db table name  -->
                </articles>
            </entities>
        </articles_mysql4>
    </models>
    <resources>  
        <articles_setup>
            <setup>
                <module>Sitepoint_Articles</module>
            </setup>
            <connection>
                <use>core_setup</use>
            </connection>
        </articles_setup>
        <articles_write>
            <connection>
                <use>core_write</use>
            </connection>
        </articles_write>
        <articles_read>
            <connection>
                <use>core_read</use>
            </connection>
        </articles_read>
    </resources>
</global>

然后我按以下方式为sql和articles_setup创建了文件夹 应用程序/代码/本地/ Sitepoint /用品/ SQL / articles_setup 在它内部,包含mysql4-install-0.1.0.php文件,其中包含以下代码。

<?php
$installer = $this;
$installer->startSetup();
$installer->run("-- DROP TABLE IF EXISTS {$this->getTable('articles')};
CREATE TABLE {$this->getTable('articles')} (
      `articles_id` int(11) unsigned NOT NULL auto_increment,
      `title` varchar(255) NOT NULL default '',
      `short_desc` text NOT NULL default '',
      `long_desc` text NOT NULL default '',
      `status` tinyint(2) NOT NULL default '0',
      `created_time` datetime NULL,
      `update_time` datetime NULL,
      PRIMARY KEY (`articles_id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
    ");
    $installer->endSetup();
?>

我按照本教程=&gt; https://www.sitepoint.com/magento-install-upgrade-data-scripts-explained/ 但是没有创建表格。我尝试了其他几个教程。它们都提供了相同的方式。有人可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

在app / etc / modules文件夹中创建Sitepoint_Articles.xml文件,然后通过以下代码。清除缓存并重新加载网站。导航到system-&gt; configuration-advanced-&gt; advance并确保您的模块列在那里。如果出现,请检查表格是否已创建。

应用程序的/ etc /模块/ Sitepoint_Articles.xml

<?xml version="1.0" encoding="UTF-8"?>
<config>
    <modules>
        <Sitepoint_Articles>
            <active>true</active>
            <codePool>local</codePool>
            <depends>
                <!-- add any depending modules here -->
            </depends>
        </Sitepoint_Articles>
    </modules>
</config>