Tôi đang cố gắng thêm thuộc tính tùy chỉnh theo chương trình trong tập lệnh nâng cấp mô-đun. Kịch bản chạy tốt và tạo thuộc tính mới (nghĩa là nó xuất hiện trong danh sách quản trị Magento trong Catalog-> Attributes-> Manage Attributes khi kịch bản đã chạy). Lúc đầu, tôi đang sử dụng lớp Mage_Eav_Model_Entity_Setup
(như được đề xuất here và không phải trường 'hiển thị' cũng như 'apply_to' được đặt như dự định ('hiển thị' luôn sai và 'áp dụng cho' vẫn là "Tất cả sản phẩm loại" hơn là sử dụng danh sách được cung cấp trong kịch bản).Hiển thị thuộc tính mới được tạo bởi kịch bản nâng cấp Magento
Sau đó, tôi tìm thấy this, mà giải thích rằng tôi nên sử dụng Mage_Catalog_Model_Resource_Setup
thay vào đó, và điều đó đã khắc phục vấn đề với 'apply_to'.
Nhưng tôi vẫn có thể không nhận thuộc tính 'visible' của thuộc tính để thiết lập là true. Nếu ai đó có bất kỳ ý tưởng nào tại sao thuộc tính 'visible' vẫn không được thiết lập như nó shou Tôi sẽ rất biết ơn khi nghe, cảm ơn!
Đây là mã kịch bản nâng cấp của tôi:
$updater = $this; // $this is class Mage_Eav_Model_Entity_Setup
$updater->startSetup();
$updater->addAttribute('catalog_product', 'my_test_attribute', array(
'label' => 'My Test Attribute',
'type' => 'int',
'input' => 'select',
'global' => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_GLOBAL,
'apply_to' => 'simple,configurable',
'group' => 'General',
'visible' => true,
'required' => true,
'user_defined' => true,
));
$updater->endSetup();
Tôi đang chạy Magento 1.7.0.1 trong WAMP trên Windows 7.
Bạn có thể làm rõ thuộc tính "có thể nhìn thấy" thuộc tính "là gì không? –
Tim, bằng cách "thiết lập thuộc tính hiển thị thành true" Tôi có nghĩa là trong danh sách quản trị Magento trong Catalog-> Attributes-> Manage Attributes cột "Visible" nên được đặt thành "Yes" cho thuộc tính mới. –
Điều "Mage_Catalog_Model_Resource_Setup" đã khiến tôi phát điên! Cảm ơn! –