我正在寻找一种替代方法,我可以在“相关产品”选项卡(@产品创建)中的“位置”旁边有第二个字段。
该字段必须是十进制类型,并且应该存储在数据库中。此刻:
我已magento\app\code\core\Mage\Catalog\data\catalog_setup\data-install-1.6.0.0.php
通过在 ~175 行添加此文件来更改此文件:
... array( 'link_type_id' => Mage_Catalog_Model_Product_Link::LINK_TYPE_RELATED, 'product_link_attribute_code' => 'extra_field', 'data_type' => 'decimal' ), ...
这段代码在数据库的“链接”中创建了一个新字段。并在此处添加了一个新列magento\app\code\core\Mage\Adminhtml\Block\Catalog\Product\Edit\Tab\Related.php
(第 ~216 行):
$this->addColumn('extra_field', array(
'header' => Mage::helper('catalog')->__('Position'),
'name' => 'extra_field',
'index' => 'extra_field',
'width' => 60,
'editable' => !$this->_getProduct()->getRelatedReadonly(),
'edit_only' => !$this->_getProduct()->getId(),
'type' => 'select',
'options' => $options
));
并在文件中添加以下行(大约 122 行)app\design\adminhtml\default\default\layout\catalog.xml
:
<action method="addColumnInputName">
<input_name>position</input_name>
<input_name>extra_field</input_name> <!--This one-->
</action
此时,我能够正确存储/检索这些新信息。只有最后一个问题:当我单击下拉菜单时,整行被禁用(开头的复选框未选中)。
为什么会这样?它变得非常烦人。
非常感谢!