создать атрибут даты и времени для продукта в magento 2


11

Я попытался создать атрибут для продукта, который должен отображать календарь даты и времени и который должен храниться в базе данных только в формате даты и времени. Я боролся с ним много, но не повезло. Можете ли вы помочь мне, пожалуйста, помогите мне ... это мой сценарий

$ EavSetup-> AddAttribute (-> addAttribute (
        \ Magento \ Каталог \ Model \ Продукт :: ЛИЦО,:: ENTITY ,
        'Xyz_start_time','xyz_start_time' ,
        [[
        'group' => 'xyz','group' => 'xyz' ,  
        'type' => 'datetime','type' => 'datetime' ,  
        'backend' => '','backend' => '' ,  
        'frontend' => '','frontend' => '' ,  
        'label' => 'Start Time','label' => 'Start Time' ,  
        'input' => 'date','input' => 'date' ,  
        'class' => '','class' => '' ,  
        'source' => '','source' => '' ,  
        'global' => \ Magento \ Catalogue \ Model \ ResourceModel \ Eav \ Attribute :: SCOPE_GLOBAL,'global' => \ Magento \ Catalogue \ Model \ ResourceModel \ Eav \ Attribute :: SCOPE_GLOBAL , 
        'visible' => true,'visible' => true ,  
        'required' => false,'required' => false ,  
        'user_defined' => true,'user_defined' => true ,  
        'default' => '','default' => '' ,  
        'searchable' => false,'searchable' => false ,  
        'фильтруемый' => ложь,'фильтруемый' => ложь ,  
        «сопоставимый» => ложный,«сопоставимый» => ложный ,  
        'visible_on_front' => false,'visible_on_front' => false ,  
        'used_in_product_listing' => true,'used_in_product_listing' => true ,  
        'unique' => false,'unique' => false ,  
        'apply_to' => 'простой, настраиваемый, виртуальный, пакетный, загружаемый''apply_to' => 'простой, настраиваемый, виртуальный, пакетный, загружаемый'  
        ]]
        ););

$eavSetup->addAttribute( \Magento\Catalog\Model\Product::ENTITY, 'xyz_end_time', [ 'group' => 'xyz', 'type' => 'datetime', 'backend' => '', 'frontend' => '', 'label' => 'End Time', 'input' => 'date', 'class' => '', 'source' => '', 'global' => \Magento\Catalog\Model\ResourceModel\Eav\Attribute::SCOPE_GLOBAL, 'visible' => true, 'required' => false, 'user_defined' => true, 'default' => '', 'searchable' => false, 'filterable' => false, 'comparable' => false, 'visible_on_front' => false, 'used_in_product_listing' => true, 'unique' => false, 'apply_to' => 'simple,configurable,virtual,bundle,downloadable' ] );


Это создает DatePicker с датой, только не показывая время на нем.


Привет Шанкар, ты создал атрибут Date Time?
Прия Поннусамы

1
Пожалуйста, смотрите мой ответ на подобную проблему здесь: magento.stackexchange.com/questions/174840/…
Mageinn

Ответы:


2

Одним из возможных решений является использование Модификаторов. Вам необходимо определить модификатор в Vendor \ Module \ etc \ adminhtml \ di.xml, а затем создать сам модификатор в Vendor \ Module \ Ui \ DataProvider \ Product \ Form \ Modifier \ Datetime.php . Модификатор должен установить время конфигурации вашего атрибута.

Пожалуйста, обратитесь к этому ответу здесь для получения дополнительной информации: Magento 2 Create Date with Time атрибут для продукта


0

Это ошибка с magento2. Поле на самом деле является датой-временем, однако указатель даты - только дата без времени. В качестве быстрого обходного пути вы можете использовать API для установки даты и времени. Или же вам нужно будет переопределить указатель даты Magento или файл для ошибки в github.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.