Defina um valor de configuração padrão em um campo de formulário de componente de interface do usuário

9

O formato da ui-components para formulários e grades está mudando na versão 2.2 (dev). (talvez já tenha feito). Como posso definir um valor padrão para um campo.
Antes da versão 2.2-dev, você poderia adicionar um campo como este no formulário.

    <field name="title">
        <argument name="data" xsi:type="array">
            <item name="config" xsi:type="array">
                <item name="dataType" xsi:type="string">text</item>
                <item name="default" xsi:type="string">Some default value.</item>
                <item name="label" xsi:type="string" translate="true">Page Title</item>
                <item name="formElement" xsi:type="string">input</item>
                <item name="source" xsi:type="string">source_here</item>
                <item name="sortOrder" xsi:type="number">20</item>
                <item name="dataScope" xsi:type="string">title</item>
                <item name="validation" xsi:type="array">
                    <item name="required-entry" xsi:type="boolean">true</item>
                </item>
            </item>
        </argument>
    </field>

no 2.2-dev, a coluna fica assim:

    <field name="title" sortOrder="20" formElement="input">
        <argument name="data" xsi:type="array">
            <item name="config" xsi:type="array">
                <item name="source" xsi:type="string">source_here</item>
            </item>
        </argument>
        <settings>
            <validation>
                <rule name="required-entry" xsi:type="boolean">true</rule>
            </validation>
            <dataType>text</dataType>
            <label translate="true">Page Title</label>
            <dataScope>title</dataScope>
        </settings>
    </field>

Observe que defaultestá faltando no meu segundo exemplo.
Eu tentei <default>Some default value</default>e a mesma sintaxe da versão anterior, mas o xml não valida.

Existe uma maneira de fazer isso na nova versão ou alguém o ignorou?

Marius
fonte
11
hum .... PR ... hum ...
Rafael no Digital Pianism
@RaphaelatDigitalPianism Preciso de uma confirmação primeiro.
Marius
Já não parecia muito em tbh mas o som muito parecido com alguém esqueceu algo
Raphael em Digital pianismo
Talvez um pouco fora de tópico: mas será compatível com versões anteriores? : -S
Giel Berkers
@GielBerkers. Pelo que testei até agora, a versão antiga ainda funciona na versão 2.2-dev. Então eu diria que sim.
Marius

Respostas:

2

Eu cavo alguns arquivos principais e vejo que eles definiram o valor padrão como este

Fonte vendor/magento/module-catalog/view/adminhtml/ui_component/category_form.xml

Você pode tentar abaixo o caminho. Talvez ele o ajude:

<field name="title" sortOrder="20" formElement="input">
    <argument name="data" xsi:type="array">
        <item name="config" xsi:type="array">
            <item name="source" xsi:type="string">source_here</item>
            <item name="default" xsi:type="string">Some default value.</item> <!--Default Value-->
        </item>
    </argument>
    <settings>
        <validation>
            <rule name="required-entry" xsi:type="boolean">true</rule>
        </validation>
        <dataType>text</dataType>
        <label translate="true">Page Title</label>
        <dataScope>title</dataScope>
    </settings>
</field>
Murtuza Zabuawala
fonte