Удаление записей в Yii2 при помощи метода deleteAll и условии not in выглядит не очень очевидным и столкнувшись с этой задачей, решил написать короткую заметку с примером реализации. Секрет в том, что условие надо задавать в виде массива. Приведу пример: Этот пример сгенерирует следующий запрос (при входящих данных, например $id…

Сегодня стала очень простая задача для которой, как оказалось нет нативного решения в коробке Yii2. Но, ничего страшного и вариант, как получить название базы данных в Yii2 был найден на просторах Сети. Всего-то навсего следует написать вот такую функцию: Вызов, в общем случае, будет выглядеть примерно так: Как Вы понимаете…

Вопрос, как установить значение по умолчанию для атрибута модели встает очень регулярно, при этом ввиду различных особенностей выполнения конкретного проекта оптимальное решение может быть разным. Приведу пример решения, которым пользуюсь сам и которое отлично подходит к любому приложению. Все, что вам потребуется переопределить метод beforeSave, в котором укзаать значение. Также,…

Для удобства работы с запросом, фильтрации и сортировки в сложных реляционных запросах удобно использовать joinWith. Но здесь иногда возникают трудности ввиду не очевидного присвоения алиаса для подключаемой таблицы. На самом деле же все достаточно просто. Исходя из ответа qiang на github: Таким образом мы можем использовать алиас cu для обращения…

Приведу простой, но не очень очевидный ответ на вопрос, как следует указывать условие NOT NULL при работе с query builder. Код, на самом деле, очень прост. Данный код сгенерирует именно тот запрос, что нам нужен и выберет записи, у которых content не равен NULL. Удачи!

Буквально сегодня довелось писать небольшое поведение (behavior) и, в процессе работы, вспомнил о интересном моменте, который, в свое время, занял много времени для поиска правильного решения. Речь идет о необходимости обратится к модели-родителю, от имени которой вызывается само поведение. Итак, несмотря на простоту решения ответ на вопрос не лежит нигде…