1

我正在尝试遵循本教程,但有些不成功!

我已经到了我的脚本应该显示“正在运行此升级:Myname_Weblog_Model_Resource_Setup Exit for now”的地步。这不会发生。

我相信这与我的配置文件有关,但尽管我无法找出问题所在。

我已将 die 语句放入 setup.php 文件中,并按预期杀死了脚本。然后我从 setup.php 中删除了 die 语句并将其放入 mysql4-install-0.1.0.php 中,这没有任何效果,脚本继续从我的控制器呈现数据。

我已经添加了我一直在寻找的代码以尝试找到解决方案(以及完整的文件夹结构,希望它足够清晰),有人可以告诉我问题出在哪里或我应该在哪里解决这个问题。

  • 我的名字
    • 博客
      • 模型
        • 资源
          • 博文
          • -Collection.php
        • -Blogpost.php
        • -Setup.php
      • -Blogpost.php
      • 控制器
      • -IndexController.php
      • ETC
      • -config.xml
      • sql
        • 博客设置
        • -mysql4-install.0.1.0.php

我的名字/Weblog/etc/config.xml

<config>
<modules>
    <Tonysimpson_Weblog>
        <version>0.1.0</version>
    </Tonysimpson_Weblog>
</modules> 

<global>

    <models>            
        <weblog><!--group name, matches the module name-->
            <class>Tonysimpson_Weblog_Model</class><!--Base name allmodels in the weblog group will have-->
            <resourceModel>weblog_resource</resourceModel><!--indicagtes which resource model should be used-->
        </weblog>

        <weblog_resource>
            <class>Tonysimpson_Weblog_Model_Resource</class>
            <entities>
                <blogpost>
                    <table>blog_posts</table>
                </blogpost>
            </entities>                          
        </weblog_resource>  
    </models>

    <resources>
        <weblog_setup>
            <setup>
                <module>Tonysimpson_Weblog</module>
                <class>Tonysimpson_Weblog_Model_Resource_Setup</class>
            </setup>
        </weblog_setup>
    </resources>

</global>

<frontend>
    <routers>
        <weblog>
            <use>standard</use>
            <args>
                <module>Tonysimpson_Weblog</module>
                <frontName>weblog</frontName>
            </args>
        </weblog>
    </routers>
</frontend>

MyName/Weblog/Model/Resource/Setup.php

class Tonysimpson_Weblog_Model_Resource_Setup extends Mage_Core_Model_Resource_Setup
{

}

我的名字/Weblog/sql/weblog_setup/mysql4-install-0.1.0.php

echo 'running this upgrde: ' . get_class($this) . "\n <br /> \n";
die("exit for now");
4

2 回答 2

2

weblog_setup在 表中签出core_resoruce,如果您的资源(weblog_setup)存在于此表中,那么您的安装程序将不会运行,您可以做的是备份您的core_resource并删除其条目,weblog_setup OR否则您可以尝试编写升级脚本。

于 2013-07-04T12:13:16.687 回答
0

您可以尝试删除设置类,看看是否会有任何错误。因此,如果 config.xml 正常,您现在就可以了。

还要在数据库中检查 core_resoruce 表或类似的东西。也许它已经安装了,这就是它无法再次运行的原因。

同时删除缓存。

你用什么服务器?ngnix 还是 apache?因为我有一个拥有第一个客户端的客户端,并且存在一些权限问题,因此没有安装扩展。

于 2013-07-03T20:44:16.100 回答