我正在寻找替代方案,我可以在“相关产品”标签中的“位置”旁边显示第二个字段(@产品创建)。
此字段必须为十进制类型,并且应存储在数据库中。此刻:
我在第175行添加了这个文件magento\app\code\core\Mage\Catalog\data\catalog_setup\data-install-1.6.0.0.php
:
... 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
));
在文件app\design\adminhtml\default\default\layout\catalog.xml
中添加以下行(大约122):
<action method="addColumnInputName">
<input_name>position</input_name>
<input_name>extra_field</input_name> <!--This one-->
</action
此时,我能够正确存储/检索这些新信息。最后一个问题是:当我点击下拉列表时,整行都被禁用(开头的复选框未选中)。
为什么会这样?它真的很烦人。
非常感谢!
答案 0 :(得分:0)
这个英寸帖子是一个非常好的起点(像往常一样): http://inchoo.net/ecommerce/magento/how-to-add-custom-product-relations-in-magento/
另一张海报也可能有所帮助: http://magebase.com/magento-tutorials/understanding-the-grid-serializer-block/
要解决问题,请按照问题中描述的步骤进行操作。
要解决UI问题,请使用以下线程中描述的方法: Magento select field disables row in related products
现在一切都在为我工作:)