有沒有將自定義表單元素添加到Magento Adminhtml表單而不將自定義元素置於lib/Varian
文件夾中的方法?將自定義表單元素添加到Adminhtml表單
我已經找到了這本質上是一個Varian_Data_Form_Element_
工廠
public function addField($elementId, $type, $config, $after=false)
{
if (isset($this->_types[$type])) {
$className = $this->_types[$type];
}
else {
$className = 'Varien_Data_Form_Element_'.ucfirst(strtolower($type));
}
$element = new $className($config);
$element->setId($elementId);
if ($element->getRequired()) {
$element->addClass('required-entry');
}
$this->addElement($element, $after);
return $element;
}
這樣的代碼,如果我正確地讀這篇文章,我保證一個EAV屬性的前端返回一個特定的字段類型,(如supertextfield
)當顯示該屬性的編輯表單時,系統將實例化/呈現Varien_Data_Form_Element_Supertextfield
。
這很好,但它意味着我需要將我的自定義表單元素包含在lib/Varian
文件夾層次結構中。鑑於面向模塊的Magento是如何的,這似乎是做錯了。
我知道我可以用的lib一個丘斯托自動加載磁帶機或符號鏈接JANK身邊,但我主要是興趣,如果有
添加的屬性自定義表單元素一個規範的方法
自定義Magento自動加載器的規範方法。
不爲我工作,我很抱歉地說。包含(第93行)時,Varien的Autoload.php僅在其自己的文件夾中查找。可能有可能以編程方式設置自動加載的「_collectClasses」或「_isIncludePathDefined」屬性,以使其在我指定的文件夾中查找? – urig 2011-03-29 10:49:52