Yii2

yii2 ActiveRecord findOne c условием LIKE -- пример кода

Проблему (добавления like условия в запрос) удалось решить, используя код, вида:

$command = static::find()->filterWhere(
  ['LIKE', 'verify_code', "$token"]
);
$User = $command->one();

yii2 navbar active Не на все элементы ставится active (меню)

Проблема может быть в том, что некоторые маршруты указаны у вас в неполной форме (без index), поэтому навигационный бар "не узнаёт их"Ю так например вместо:

$NavItems[] =  ['label' => 'Мои обращения', 'url' => ['request']];

надо писать:

$NavItems[] =  ['label' => 'Мои обращения', 'url' => ['request/index']];

yii2 Редирект переадресация на предыдущую страницу. Пример кода

Из контроллера

Из действия контроллера можно так:

return $this->redirect(Yii::$app->request->referrer ?: ['/personal/login']);

где /personal/login -- маршрут, на случай, если предыдущая страница окажется неизвестной.

yii2 Alert виджет для вывода сообщений из setFalsh(). Как изменить версию используемого bootstrap (CSS)

Почитав о переопределении CSS/JS бустрапа в yii2, становится ясно, что самый простой путь, если вы установили bootstrap4 (совместно с bootstrap 3 можно так), просто поменять

echo \yii\bootstrap\Alert::widget([

на

echo \yii\bootstrap4\Alert::widget([

в самом классе Alert, так чтобы код был (я правил common/widgets/Alert.php):

yii2 Подтверждение адреса электронной почты после регистрации email

Делаем так:

  1. Пишем миграцию, которая добавит в таблицу пользователей поля для хранения секретного ключа, который мы и вышлем пользователю на email.
  2. Далее нам придётся:
    1. научиться отправлять письмо со ссылкой на наш сайт (в ней должен быть секретный ключ)
    2. написать обработчик для этой ссылки

yii2 formatter Форматированный вывод дат, текста, html и всего остального -- "не знадано" если значение пустое

В секцию components конфига вашего прилоежния, добавьте, например:

'formatter' => [
	'class' => 'yii\i18n\Formatter',
	'dateFormat' => 'd MMM yyyy г.',
	'datetimeFormat' => 'd MMM. yyyy г. H:mm',
	'defaultTimeZone' => 'Europe/Moscow',
	'locale' => 'ru-RU',
],

Далее можно использовать:

<?= Yii::$app->formatter->asRaw($item['text']) ?>
<?= Yii::$app->formatter->asDatetime($item['created_at']) ?>
<?= Yii::$app->formatter->asDatetime($item['updated_at']) ?>

yii2 advanced Папка enviroments для чего она нужна

Папка содержит описание конфигов для разных сред dev и prod (можно добавить и другие среды). Конфиги являются образацами которые после инициалиизации приложения переносятся в папки постоянного пребывания.

Подробности: https://github.com/yiisoft/yii2-app-adva...

yii2 Создание для обработки ошибок отдельного контроллера (шаблона и т.д.)

В конфиг в секцю компонентов добавляем:

'components' => ['errorHandler' => [
        'errorAction' => 'контроллер/действие',
    ],

Далее просто создаем контроллер и действие в нём, соответствующие маршруту контроллер/действие из конфига.

yii2 Форматирование даты и времени из строки в т.ч. пустых

Используейте:

 Yii::$app->formatter

например:

Yii::$app->formatter->asDate($reception->date);
Yii::$app->formatter->asTime($reception->time_start);

Pages

Subscribe to RSS - Yii2