Отображение полей в зависимости от действия
Как добиться чтобы какие-то поля формы отображались только при редактировании, а какие-то только при создании нового элемента списка?
Для этого достаточно в описании формы пометить поля соответствующими параметрами remove_if: при значении new — поле будет отображаться только при создании нового элементам; а edit — только при редактировании.
<metadata name="example.removeif" type="form">
<form>
<field name="name" remove_if="edit">
<input type="text" name="value"/>
</field>
<field name="nick" remove_if="new">
<input type="text" name="value"/>
</field>
</form>
</metadata>
В данном примере поле name будет отображаться только при создании нового элемента списка, а nick наоборот, при редактировании. Значения кроме new/edit будут проигнорированы.