2012-06-28 6 views
1

Мой вопрос исходит от seeing this question и не в состоянии найти правильный ответ.Magento Adminhtml: Откуда берутся формы?

При добавлении нового продукта, в каком случае используется фактический код для полей ввода? В вышеупомянутом вопросе желание состоит в том, чтобы добавить атрибут maxlength в поле ввода. Я выкопался около часа и нашел много помощников в форме, но не тот, для этого конкретного случая.

Как найти истинное происхождение этой (или любой) формы в Magento?

ответ

3

Если я понять ваш вопрос правильно, большинство полой формы Magento происходит из Varian_Data_Form Однако вы можете легко определить свойство MAXLENGTH через выше вызов, как в:

$fieldset->addField('title', 'text', array(
      'label'  => Mage::helper('form')->__('Title3'), 
      'maxlength' => '30', // <-- change here 
      'class'  => 'required-entry', 
      'required' => true, 
      'name'  => 'title', 
      'onclick' => "alert('on click');", 
      'onchange' => "alert('on change');", 
      'style' => "border:10px", 
      'value' => 'hello !!', 
      'disabled' => false, 
      'readonly' => true, 
      'after_element_html' => '<small>Comments</small>', 
      'tabindex' => 1 
     )); 

примера (и модифицированной) от:

Связанный:

+0

Правильно, но возьмите мой пример, где именно это код, подобный приведенному выше, который создает эту форму? Если это в основном из 'Varien_Data_Form', то, что говорит ему правильные идентификаторы и т. Д., Для добавления новой формы продукта. Мне нравится думать, что я не сосать в Magento, и это злится на меня. –

0

Я принял ответ B00MER, потому что это привело меня к тому, что я считаю реальный ответ ...

перейдя по ссылкам, он перечислил, паттерн $fieldset->addField представил себя в качестве ключевого способа для grep в файлах.

[email protected]:~/www/app$ grep -rin "addField.*text" * | grep -i product 
code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Super/Config/Simple.php:140:  $fieldset->addField('simple_product_inventory_qty', 'text', array(

Существовали около десятка результатов, которые были быстро суженные вниз (мы не заботясь о GiftCard или наборы атрибутов). Я не на 100% уверен, что этот файл является ответом, но кажется, что можно добавить некоторую логику, чтобы поймать, могут ли быть добавлены name=="Name" ввода, а затем добавлена ​​максимальная длина.

+0

Большинство атрибутов addFields будут сопоставляться с атрибутами HTML, поэтому maxlength, добавленные к его параметрам, * должны * привести к тому, что часть счетчика HTML будет одинаковой. Если вам нужен более мелкозернистый контроль, см. Рекомендацию Аланса для таких: http://stackoverflow.com/a/6077165/158325 – B00MER

Смежные вопросы