Yii

Bitbucket pipelines + php unit tests

Для сборки билда теперь можно использовать встроенный CI от Bitbucket. Для этого достаточно подключить Pipelines в настройках репозитория и создать примерно такой yml файл:

При помощи данного pipeline вы можете прогонять как просто unit так и интеграционные тесты с…
Read more

Translation component для Yii

Чтобы не упустить перевести все метки в Yii первой версии имеется соответсвующие событие OnMissingTranslation. Оно позволяет задавать нужный handler для обработки пропущенных переводов.   Достаточно написать компонент для этого:

  И задать обработчик в конфиге:

  Теперь все…
Read more

Динамическое изменение классов таблицы CGridView

Для изменения класса строк таблицы в CGridview yii1 можно воспользоваться следующим шаблоном:

Данный обработчик возвращает название класса для тега < t r > таблицы.  

Анонимные функции в CGridView Yii1

Использование анонимной функции позволяет легко работать с ячейками CGridView в Yii1: Сначала присвоим $this в переменную $controller:

Теперь можно писать свою логику в виде анонимной функции прямо при объявлении ячейки в CGridView:

 

CJuiAutoComplete пример использования в Yii

Простой пример использования виджета автоподстановки выражения в зависимости от ввода:

В качестве модели нужно задать атрибут model, также указать название атрибута в attribute. Массивом возможных значений нужно заполнить атрибут source — данный атрибут виджета может принимать как заранее подготовленный…
Read more

AjaxLink и jQuery параметр

Код ниже может поставить динамические параметры значения одного из элемента в ajax post,get через метод AjaxLink для последующей передачи обработчику:

Тем самым данные из #some_input_id.val() отправятся как имя data методом POST на обработчик default/action. Обновление будет записано в контейнер…
Read more

Yii — миграции в примерах

1. Создание новой миграции (папка migrations должна быть создана и разрешена на запись): #  php yiic.php migrate create create_super_table  2. Пример миграции создания новой таблицы:

3. Пример миграции добавления данных в таблицу:

4. Запуск миграций: # php yiic.php migrate # php…
Read more

AJAX в Yii

1. AJAX ссылка, компонент ajaxLink:

  Формируется ссылка и при нажатии вызывается метод контроллера site/ajax. Можно задавать как GET так и POST запросы и в data прописывать нужные переменные для отправки. update указывает в какой блок будет загружен ответ…
Read more

Yii: удобный виджет выбора даты CJuiDatePicker

В Yii имеется множество готовых и качественных фишек для фронт сайда. Один из них компонент CJuiDatePicker, который автоматически подгружает Jquery UI datepicker для удобного выбора даты пользователю. Также он обладает удобной возможностью для конфигурации виджета. Приведем пример: < ? php...
Read more

Yii: настраиваем капчу

Yii имеет встроенный класс для генерации и валидации капчи, что достаточно удобно. Давайте рассмотрим как можно настроить цвет, фон капчи под себя. Сначала всё стандартно, подключаем action в контроллере: ‘captcha’ => array( ‘class’ => ‘CCaptchaAction’, ), В модели прописываем валидацию:…
Read more