Définir une valeur de configuration par défaut sur un champ de formulaire ui-component


9

Le format ui-components pour les formulaires et les grilles change dans la version 2.2 (dev). (peut-être que c'était déjà le cas). Comment puis-je définir une valeur par défaut pour un champ.
Avant la version 2.2-dev, vous pouviez ajouter un champ comme celui-ci dans le formulaire.

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

en 2.2-dev, la colonne ressemble à ceci:

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

Notez que le defaultmanque dans mon deuxième exemple.
J'ai essayé <default>Some default value</default>et la même syntaxe que pour la version précédente mais le xml ne valide pas.

Existe-t-il un moyen de le faire dans la nouvelle version ou quelqu'un l'a ignoré?


1
hum .... PR ... hum ...
Raphael au Digital Pianism

@RaphaelatDigitalPianism J'ai d'abord besoin d'une confirmation.
Marius

Je n'ai pas trop regardé dans tbh mais on dirait beaucoup que quelqu'un a oublié quelque chose
Raphael au Digital Pianism

Peut-être un peu hors sujet: mais sera-t-il rétrocompatible? : -S
Giel Berkers

@GielBerkers. D'après ce que j'ai testé jusqu'à présent, l'ancienne version fonctionne toujours sur la version 2.2-dev. Je dirais donc oui.
Marius

Réponses:


2

Je creuse quelques fichiers de base et je vois qu'ils ont défini la valeur par défaut comme ceci

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

Vous pouvez essayer ci-dessous peut-être que cela vous aidera:

<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>
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.