Я хочу добавить новое поле как datetime в раздел страницы CMS при добавлении новой страницы. Я обнаружил, что magento использует для этого UI Component, поэтому после копания я смог добавить поле даты с помощью приведенного ниже кода, но не смог добавить поле datetime. Кто-нибудь может помочь в этом.
Код для добавления поля даты:
<field name="start_date">
<argument name="data" xsi:type="array">
<item name="config" xsi:type="array">
<item name="dataType" xsi:type="string">string</item>
<item name="label" xsi:type="string" translate="true">Go Live Start Date</item>
<item name="formElement" xsi:type="string">date</item>
<item name="source" xsi:type="string">page</item>
<item name="sortOrder" xsi:type="number">21</item>
<item name="dataScope" xsi:type="string">start_date</item>
<item name="validation" xsi:type="array">
<item name="required-entry" xsi:type="boolean">true</item>
</item>
</item>
</argument>
</field>
Файл, который мы должны переопределить для достижения:
vendor/magento/module-cms/view/adminhtml/ui_component/cms_block_form.xml
magento2
uicomponent
ui-form
datetime
MagentoDev
источник
источник
Ответы:
Чтобы добавить средство выбора даты и времени, вы должны использовать следующую директиву внутри XML-файла:
Важной вещью является
showsTime
возможность.Результат должен выглядеть так:
Если вы хотите отладить элемент пользовательского интерфейса - используйте эту команду в консоли браузера (на вашей странице):
Он возвращает ваш
date
элемент со всеми начальными опциями и всеми возможными функциями:Вы можете использовать их, когда определяете элемент (внутри xml).
Как дополнительная информация:
Элемент
date
(такжеdateTime
) можно найти здесь:в статических файлах:
У класса элемента даты (объекта) есть метод
prepareDateTimeFormats
, гдеshowsTime
проверяется важная опция :источник
DateTime
элемент всегда отображает дату..timepicker()
hh:mm:ss
егоHH:mm:ss
в UI Component, иначе03:00:00 PM
станет03:00:00 AM
12 часов, и вы не сможете сохранить время PM в таблице базы данных.Я надеюсь, что этот ответ дает некоторое представление о том, что вы скучаете
Я добавил компонент пользовательского поля поля даты через php (он работает нормально)
сравните с вашим XML-файлом все значения, кроме date_format и time_format, поэтому вы можете попытаться установить оба значения в своем XML-файле
для более подробной информации, пожалуйста, обратитесь к этому полному исходному коду
источник
source
свое собственное имя? Какие требования здесь?