我有自定义模块 Onestepcheckout, ,因为我已经在现有表中添加了2个字段。但是它没有安装在 core_resourcetables 还没有安装字段。

我的代码是:

magento app etc copules easylife_onestepcheckout.xml

<?xml version="1.0"?>
<config>
    <modules>
        <Easylife_OnestepCheckout>
            <active>true</active>
            <codePool>local</codePool>
        </Easylife_OnestepCheckout>
    </modules>
</config>

magento app code local easylife onestepcheckout etc etc config.xml

<?xml version="1.0" encoding="utf-8"?>
<config>
    <modules>
        <Easylife_OnestepCheckout>
            <version>0.1.0</version>
        </Easylife_OnestepCheckout>
    </modules>

    <global>
        <models>
            <onestepcheckout>
                <class>Easylife_OnestepCheckout_Model</class>
            </onestepcheckout>
            <onestepcheckout_adminhtml>
                <class>Easylife_OnestepCheckout_Adminhtml_Model</class>
            </onestepcheckout_adminhtml>
        </models>
        <blocks>
            <checkout>
                <rewrite>
                    <links>Easylife_OnestepCheckout_Block_Links</links>
                </rewrite>
            </checkout>
            <onestepcheckout>
                <class>Easylife_OnestepCheckout_Block</class>
            </onestepcheckout>
        </blocks>
        <helpers>
            <checkout>
                <rewrite>
                    <url>Easylife_OnestepCheckout_Helper_Url</url>
                </rewrite>
            </checkout>
            <onestepcheckout>
                <class>Easylife_OnestepCheckout_Helper</class>
            </onestepcheckout>
        </helpers>
    </global>    
</config>

magento app code local easylife onestepcheckout sql onestepcheckout_setup install-0.1.0.php

<?php  

$installer = $this;
$installer->startSetup();

$installer->addAttribute(
    'sales_flat_order',
    'giftwrap',
    array(
        'type' => 'int',
        'grid' => false,
        'required' => false,
    )
);

$installer->addAttribute(
    'sales_flat_order',
    'giftwrap_price',
    array(
        'type' => 'decimal',
        'grid' => false,
        'required' => false,
    )
);

$installer->endSetup();

我可以知道我出错了哪里吗?

谢谢。

有帮助吗?

解决方案

在您的配置中,XML缺少资源定义 <global> 节点

   <resources>
        <onestepcheckout_setup>
            <setup>
                <module>Easylife_OnestepCheckout</module>
            </setup>
            <connection>
                <use>core_setup</use>
            </connection>
        </onestepcheckout_setup>
    </resources>
许可以下: CC-BY-SA归因
scroll top