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

답변:


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')
            ]
        );

데이터베이스에서 필드를 작성하여 값을 저장하십시오.

컨트롤러 파일에서

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

나는 이것을 일찍 시도했다. 이 코드는 두 개의 시간 필드를 세로로 배치합니다. 7 개의 시간 범위 선택기가 필요한 경우 (매주) 매우 번거로워 보입니다. 나는 적어도 한 줄에 배치하고 싶지만 위의 그림과 같이 정확하게 유지하는 것이 바람직합니다. 내 의견은이 시간 범위 선택기는 마 젠토 2 디자인 패턴에만 존재하며 아직 구현되지 않았다는 것입니다. 지금은 단일 텍스트 필드와 부트 스트랩 날짜 범위 선택기를 사용하여 시간 범위 만 표시하도록 사용자 정의했습니다. 결과 내 작업에 적합한 텍스트 형식 (예 : "10 : 00-15 : 00")으로 DB에 저장합니다.
jurgen
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.