Yii2 datepicker

321

Від автора: вітаю вас, друзі. Ми продовжуємо цикл статей, присвячених знайомству з фреймворком Yii2. У цій статті ми з вами встановимо розширення yii2-widget-datepicker, який пропонує зручний інтерфейс для вибору дати, простіше кажучи, встановивши розширення ми отримаємо симпатичний календарик для поля вибору дати.

З датами на сайтах ми працюємо суцільно й поруч. При реєстрації нас можуть попросити ввести дату народження, при запису до лікаря ми можемо вибрати вільну дату прийому і т. д. Раніше для цього часто пропонувалися випадаючі списки, з яких відвідувач сайту міг вибрати число місяць і рік. Але, як мовиться, це вже минуле століття. Зараз модною і фактично стандартною штукою для цієї мети є різноманітні віджети календарів – datepicker. Віджет прикріплюється до поля і при кліці по полю буде показаний календар, з якого відвідувач вибере потрібну дату. Вибрана дата буде підставлена у відповідне поле форми. Зручно і симпатично.

Давайте встановимо один з таких віджетів – kartik yii2-widget-datepicker. Відкриємо консоль, перейдемо в папку проекту і виконаємо наступну команду:

composer require kartik-v/yii2-widget-datepicker “@dev”

Yii2 datepicker

Відмінно! Розширення успішно встановлено, тепер залишається слідувати інструкції і додати його подання. Для цього достатньо наступного коду:

use kartik\data\DatePicker;
echo ‘Check Issue Date’;
echo DatePicker::widget([
‘name’ => ‘check_issue_date’,
‘value’ => date(‘d-My’, strtotime(‘+2 days’)),
‘options’ => [‘placeholder’ => ‘Select issue date …’],
‘pluginOptions’ => [
‘format’ => ‘dd-mm-yyyy’,
‘todayHighlight’ => true
]
]);

Після оновлення сторінки ми побачимо на сторінці поле з прикріпленим до нього календариком.

Yii2 datepicker

Далі при бажанні ви можете налаштувати календар під себе. Для цього можна скористатися документацією до розширення, яку можна знайти за посиланням.

На цьому все. Більше про фреймворку ви можете дізнатися з наших безкоштовних або платних уроків. Також створення найпростішого блогу на Yii2 можна подивитися в цьому циклі уроків.