Magento-将字段添加到销售报价单

Magento-将字段添加到销售报价单,magento,Magento,我创建了一个模块,需要在sales_flat_quote表/模型中添加一个附加字段 在我的安装脚本中,一切看起来都很正常,新字段可以在数据库中看到 检索quote对象并根据我的新字段存储值时,该值永远不会记录到数据库中。save方法不会产生错误或异常,但该值不会保持不变 如果有区别,我会在签出过程中尝试将值保存到来自观察者的报价中 以下是我在安装脚本中使用的代码: $setup = new Mage_Sales_Model_Mysql4_Setup('sales_setup'); $setup-

我创建了一个模块,需要在sales_flat_quote表/模型中添加一个附加字段

在我的安装脚本中,一切看起来都很正常,新字段可以在数据库中看到

检索quote对象并根据我的新字段存储值时,该值永远不会记录到数据库中。save方法不会产生错误或异常,但该值不会保持不变

如果有区别,我会在签出过程中尝试将值保存到来自观察者的报价中

以下是我在安装脚本中使用的代码:

$setup = new Mage_Sales_Model_Mysql4_Setup('sales_setup');
$setup->getConnection()->addColumn(
        $setup->getTable('sales_flat_quote'),
        'test_attribute',
        'text NULL DEFAULT NULL'
    );

$setup->addAttribute('quote', 'test_attribute', array('type' => 'text', 'visible' => false));

我在这里遗漏了一些明显的东西吗?

不知道为什么要创建这个对象
$setup=new Mage\u Sales\u Model\u Mysql4\u setup('Sales\u setup')
例如,如果您查看\app\code\core\Mage\Sales\sql\Sales\u setup\mysql4-upgrade-1.3.99-1.4.0.0.php,您将看到:

/* @var $installer Mage_Sales_Model_Entity_Setup */
$installer = $this;
$installer->startSetup();

/* Include code from mysql4-upgrade-0.9.38-0.9.39.php */
$installer->getConnection()->addColumn($installer->getTable('sales_flat_quote_item'),
    'store_id', 'smallint(5) unsigned default null AFTER `product_id`');

当然,您应该删除缓存,将config.xml中的模块版本更改为大于core_资源表中模块的版本号。

还添加了属性并清除了缓存?