UIコンポーネントフォームフィールドにデフォルトの構成値を設定する


9

フォームとグリッドのui-components形式は、バージョン2.2(dev)で変更されています。(多分それはすでにしました)。フィールドのデフォルト値を設定するにはどうすればよいですか。
2.2-devより前は、このようなフィールドをフォームに追加できました。

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

2.2-devでは、列は次のようになります。

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

default2番目の例ではが欠落していることに注意してください。以前のバージョンと同じ構文
を試し<default>Some default value</default>ましたが、xmlが検証されません。

新しいバージョンでそれを行う方法はありますか、それとも誰かが見落としましたか?


1
hum .... PR ... hum ...
Digital PianismのRaphael、

@RaphaelatDigitalPianism最初に確認が必要です。
マリウス

tbhをあまり見ていませんが、誰かが何かを忘れたように聞こえます
デジタルピアニズムのラファエル

おそらく少し話題外ですが、下位互換性はありますか?:-S
2017年

@GielBerkers。これまでにテストしたところ、旧バージョンはバージョン2.2-devでも動作します。だから私はイエスと言うでしょう。
マリウス

回答:


2

私はいくつかのコアファイルを掘りました、そして彼らはこのようにデフォルト値を設定していることがわかります

ソース vendor/magento/module-catalog/view/adminhtml/ui_component/category_form.xml

以下の方法を試すことができます。

<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>
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.