Imposta un valore di configurazione predefinito in un campo modulo ui-componente


9

Il formato dei componenti ui per moduli e griglie sta cambiando nella versione 2.2 (dev). (forse lo ha già fatto). Come posso impostare un valore predefinito per un campo.
Prima di 2.2-dev potresti aggiungere un campo come questo nel modulo.

    <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>

in 2.2-dev la colonna è simile alla seguente:

    <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>

Si noti che defaultmanca il mio secondo esempio.
Ho provato <default>Some default value</default>e la stessa sintassi della versione precedente ma l'XML non convalida.

C'è un modo per farlo nella nuova versione o qualcuno l'ha trascurato?


1
hum .... PR ... hum ...
Raffaello al Pianismo digitale

@RaphaelatDigitalPianism Ho bisogno prima di una conferma.
Marius

Non ho esaminato troppo bene, ma sembra molto che qualcuno abbia dimenticato qualcosa
Raphael al Digital Pianism

Forse un po 'fuori tema: ma sarà retrocompatibile? : -S
Giel Berkers,

@GielBerkers. Da quello che ho testato finora, la vecchia versione funziona ancora sulla versione 2.2-dev. Quindi direi di si.
Marius

Risposte:


2

Scavo alcuni file core e vedo che hanno impostato il valore predefinito in questo modo

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

Puoi provare qui sotto Potrebbe essere che ti aiuterà:

<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>
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.