2014-01-23 60 views
0

在Magento的管理區域,我試圖創建一個依賴字段。依賴字段是一種只能根據值(例如,「是」或「否」值)下拉或變爲可用字段的字段。這是Magento的內置功能,您可以從this blog post中看到。在Magento的安裝腳本中創建相關屬性

但是,上述博客文章(以及其他人發現)假定這些字段已被添加到system.xml中或使用下面概述的方法Vikram,但是我想在我的模塊安裝腳本中添加我的依賴項,例如:

$installer->addAttribute(
    'catalog_category', 
    'show_dependant', 
    array(
     'label' => 'Show dependant?', 
     'group' => 'My Group', 
     'type' => 'int', 
     'input' => 'select', 
     'source' => 'eav/entity_attribute_source_boolean', 
     'required' => false, 
     'visible' => true, 
     'default' => '0', 
     'global' => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE, 
    ) 
); 


$installer->addAttribute(
    'catalog_category', 
    'my_attribute_name', 
    array(
     'label' => 'A New Attribute', 
     'group' => 'My Group', //will be created if necessary 
     'type' => 'int', 
     'class' => 'validate-number', 
     'required' => false, 

     // Would be something like this maybe? 
     'depends' => array('show_dependant', 1) 

    ) 
); 

任何人都知道這是甚至可能嗎?

回答

1

如果您在MAGENTO ADMIN FORMS中工作,請考慮此示例僅在選擇了「指定」選項時才顯示文本字段。此方法使用admin表單而不是system.xml方法。

$form = new Varien_Data_Form(); 

$form->addField('yesno', 'select', array(
    'label' => $this->__('Yes or No?'), 
    'values' => Mage::model('adminhtml/system_config_source_yesnocustom') 
     ->toOptionArray(), 
)); 
$form->addField('custom_value', text, array(
    'label' => $this->__('Other'), 
)); 

// Append dependency javascript 
$this->setChild('form_after', $this->getLayout() 
    ->createBlock('adminhtml/widget_form_element_dependence') 
     ->addFieldMap('yesno', 'yesno') 
     ->addFieldMap('custom_value', 'custom_value') 
     ->addFieldDependence('custom_value', 'yesno', 2) // 2 = 'Specified' 
); 

您可以按照您希望的方式添加儘可能多的字段映射和字段依賴關係。

+0

您好,感謝您的幫助。我明白,我可以用這種方式添加依賴關係,但是通過我在創建的安裝腳本中添加我的屬性後,提出了以下問題:http://magento.stackexchange.com/questions/13255/adding-extra-tab-to-類別編輯器 – beingalex

+0

當使用安裝腳本時,Magento是否支持字段依賴? – Slimshadddyyy

+0

準確地說我的問題:) – beingalex

0

我已經創建了簡單的類別屬性依賴關係,爲屬性添加了新的輸入呈現器。它以這種方式工作: 你有幾個屬性:

– my_attribute 
– my_attribute_text 
– my_attribute_select 

注意,它們都來自my_attribute開始。

第一個屬性具有布爾類型。當它設置爲true時 - 從my_attribute開始的其他屬性可見。

來源 - https://github.com/elpas0/category_dependence

描述 - http://nwdthemes.com/2015/02/20/magento-category-attributes-dependency/

相關問題