Каковы значения атрибута «action» директивы «method»?

[10 ноября 2016 г.]    Российская сборка Magento 2.49.12
Magento 2: модули и услуги
#1 Юрий Посторонко
  • Группа: Пользователь
  • Сообщений: 5
  • Регистрация: 19.01.2013

25.01.2013 19:10

Добрый день,
начинаю разбираться с мадженто и возник вопрос:
к примеру возьмем фрагмент кода (взятого кажется из этого же формума)
<block type="core/template" name="helloworld" template="helloworld.phtml" before="-">
<action method="setImgSrc"><src>images/media/koltsovo.jpg</src></action>
<action method="setImgAlt" translate="alt" module="catalog"><alt>Helloworld</alt></action>
<action method="setLinkUrl"><url>.</url></action>
</block>

есть директива блока "action" и ее атрибут "method" - где можно узнать о возможных значениях этого атрибута, (или хотябы чаще используемых)
Спасибо.

#2 Дмитрий Федюк
  • Администратор
  • Иконка
  • Группа: Администратор
  • Сообщений: 8885
  • Регистрация: 20.02.2010

25.01.2013 20:08

Директива action предназначена для вызова метода блока.
В вашем примере код
<block type="core/template" name="helloworld" template="helloworld.phtml" before="-">
<action method="setImgSrc"><src>images/media/koltsovo.jpg</src></action>
</block>

означает, что система должна вызвать у блока helloworld метод setImgSrc с параметром "images/media/koltsovo.jpg".

При этом конкретно в данном случае у блока такого метода нет и вместо этого будет вызван метод Varien_Object::__call (про метод __call можно прочитать в документации к PHP) и, по сути, конкретно данный вызов приведет к присвоению внутреннему свойству image_src блока значения "images/media/koltsovo.jpg", в последствии, видимо, используемого в шаблоне посредством вызова аналогичного несуществующего метода getImageSrc или же свойства напрямую: getData ('image_src');

Поделиться темой: