Как создать таблицу в базе данных в Magento с помощью скрипта установки

Я новичок в Magento. Я пытаюсь создать таблицу в базе данных с помощью сценария установки. ВЕБ-САЙТ РАЗМЕЩЕН. Я выполнил несколько руководств. Все они выглядят одинаково. Я следил за каждым шагом, но таблица не создается. кто-нибудь скажет мне, где я ошибся? Вот шаги, которые я сделал. Сначала я создал папку Sitepoint внутри app / code, затем я создал папку Articles внутри Sitepont. Вот как это выглядит

приложение / код / ​​местное / 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 и article_setup следующим образом: app / code / local / Sitepoint / Articles / sql / article_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();
?>

Я следовал этому руководству => https://www.sitepoint.com/magento-install-upgrade-data-scripts-explained/ Но таблицы не создаются. Я пробовал несколько других руководств. Все они предоставляют один и тот же способ. Может ли кто-нибудь мне помочь?


person sadeee nadeee    schedule 12.11.2017    source источник
comment
вы добавили Sitepoint_Articles.xml внутрь app/etc/modules?   -  person Piyush    schedule 13.11.2017
comment
Я добавил Sitepoint_Articles.xml, но произошла орфографическая ошибка. Я написал sitepoint вместо SItepoint. Спасибо. Теперь он работает.   -  person sadeee nadeee    schedule 15.11.2017


Ответы (1)


создайте файл Sitepoint_Articles.xml в папке app / etc / modules и вставьте туда следующий код. Очистите кеш и перезагрузите сайт. Перейдите в system-> configuration-advanced-> advance и убедитесь, что ваш модуль указан там. Если он появляется, проверьте, создана ли таблица.

приложение / etc / modules / 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>
person Ajith    schedule 13.11.2017
comment
Спасибо, чувак. - person sadeee nadeee; 15.11.2017
comment
рад, что ты решил это. Без этого ваш модуль не будет виден magento - person Ajith; 15.11.2017