如何在Magento 2中将时间范围选择器添加到adminhtml表单?


9

在Magento 2的devdocs页面中,有一个时间范围选择器的示例 。 在此处输入图片说明 但是,我找不到如何在我的后端表单中添加它以创建/编辑自定义模型的任何示例。有谁知道如何做到这一点?

另外,我有一个关于如何将其保存在mysql数据库中的问题。此选择器是否需要2个字段(“从”和“到”)来存储输入的时间?


这是指向如何添加uiComponents devdocs.magento.com/guides/v2.3/ui_comp_guide/howto/的链接。 同样,创建要保存在db中的属性,创建要显示的xml。
djfordz

@jurgen您是否找到了解决方案?
fmsthird

不,我不再使用Magento2
jurgen,

Answers:


0

尝试这个,

app\code\Namespace\Module\Block\Adminhtml\Custom\Edit\Form.php

$fieldset->addField(
            'from',
            'time',
            [
                'name' => 'from',
                'label' => __('From'),
                'title' => __('From'),
                'required' => true,
                'note' => __('From Timer')
            ]
        );

$fieldset->addField(
            'to',
            'time',
            [
                'name' => 'to',
                'label' => __('To'),
                'title' => __('To'),
                'required' => true,
                'note' => __('To Timer')
            ]
        );

在数据库中创建字段以保存to和from值。

在控制器文件中,

public function saveData()
{
   $data = $this->getRequest()->getPostValue();
   $model = $this->_objectManager->create('Namespace\Module\Model\Custom');
   $model->setData($data);
   $model->save();
}

我已经尝试过了。此代码添加了两个垂直放置的时间字段。如果我需要7个时间范围选择器(对于一周的每一天),则看起来非常麻烦。我想至少将其放置在一行中,但非常希望使它与上图一样准确。我的意见是,此时间范围选择器仅存在于Magento 2设计模式中,尚未实现。现在,我使用单个文本字段和Bootstrap Date Range Picker对其进行了自定义,以仅显示时间范围。结果我以适合我的任务的文本格式(例如“ 10:00-15:00”)保存在DB中。
jurgen
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.