Удаление пробелов в начале и в конце от каждого сообщения формы к модели? — Yii2

Функция: — хотите использовать метод trim() в контроллере beforeAction для удаления пробелов слева и справа от каждого сообщения? Лучший способ использования trim в модельных правилах, подобных этому либо см. валидаторы

Read More

composer help

Usage:   help [options] [—] [<command_name>] Arguments:   command                        The command to execute   command_name                   The command name [default: «help»] Options:       —xml                      To output help as XML       —format=FORMAT            The output format (txt, xml, json, or md) [default: «txt»]       —raw                      To output raw command help   -h, —help                     Display this help message   -q, —quiet                    Do not output any message   -V, —version                  Display this application version       —ansi                     Force ANSI output       —no-ansi                  Disable ANSI output   -n, —no-interaction           Do not ask any interactive question       —profile                 …

Read More

Подключение AutoComplete в Yii 2.0

AutoComplete — класс для автозаполнения строки ввода. К примеру вы захотели сделать на своем сайте функцию помогающую заполнять поле город. При вводе начальных символов всплывает подсказка со списком городов имеющих в названиях введенные вами символы. Для использования класса AutoComplete в Yii 2.0 нам необходимо его подключить к своему шаблону. Как правило подключения классов в yii 2.0 осуществляется верхней части шаблона Для использования jui подключите его к фреймворку Вставьте в composer.json file и потом update composer( используйте код ) Так же надо будет указать путь до модели откуда будут браться данные.…

Read More

Кэширование данных — Yii2

Кэширование данных заключается в сохранении некоторой переменной PHP в кэше и её последующем извлечении. Оно является основой для расширенных возможностей, таких как кэширование запросов и кэширование страниц. Типичные варианты кэширования и получения данных: Когда анонимной функции требуются данные из внешней области видимости: Компоненты кэширования Кэширование данных опирается на компоненты кэширования, которые представляют различные хранилища, такие как память, файлы и базы данных. Кеш-компоненты, как правило, зарегистрированы в качестве компонентов приложения, так что их можно настраивать и обращаться к ним глобально. Кэширование с использованием файлов: Кэширование с использованием Memcached с двумя серверами:…

Read More

Маршрутизация и создание URL — Yii2

Когда запрос от браузера поступает в файл index.php приложения, браузер анализируется на предмет того, какой контроллер и метод нужно вызвать, чтобы сформировать страницу. Данный процесс называется маршрутизацией. Обратный процесс — создание URL-адреса, когда известны контроллер и метод, которые необходимо вызвать. Менеджер URL Менеджер URL  представляет собой компонент приложения, который используется для анализа входящих запросов с помощью метода parseRequest(), а также для создания новых URL-адресов с помощью метода createUrl(). Запросы разбираются на маршруты, которые принимают вид controller/action. В данном случае менеджер URL-адресов сообщает Yii2, какой контроллер создавать и какой метод вызывать. Использование метода createUrl() для формирования URL-адресов гарантирует,…

Read More

Использование сессии — Yii2

Сессия позволяет сохранять пользовательские данные между запросами. При использовании чистого PHP можно получить доступ к этим данным через глобальную переменную $_SESSION. Yii2 инкапсулирует сессию в объект, что дает возможность обращаться к пользовательским данным в объектно-ориентированном стиле. К сессии можно получить доступ через компонент приложения session, который по умолчанию является экземпляром класса yii\web\Session. Открытие и закрытие сессии Открыть и закрыть сессию можно следующим образом: Можно вызывать open() и close() многократно без возникновения ошибок — внутри компонента все методы проверяют сессию на предмет того, открыта она или нет. Доступ к данным сессии Получить доступ к сохраненным в сессию данным…

Read More

Метки полей формы — Yii2

По умолчанию, метки полей формы автоматически генерируются из названия поля. Генерация выполняется методом generateAttributeLabel() класса yii\base\Model. Он преобразует первую букву каждого слова в верхний регистр, если имена переменных состоят из нескольких слов. Например, username станет Username, а firstName станет First Name. Если такой вариант не устраивает, нужно переопределить метод yii\base\Model::attributeLabels(): Теперь при создании формы в шаблоне, метки задавать не нужно: Интернационализация

Read More

Виджет ActiveForm — Yii2

Рассмотрим часто использующийся при разработке виджет ActiveForm. Виджет позволяет добавить на сайт форму с полями ввода, кнопками, списками выбора, чекбоксами, радио кнопками. Для создания формы подключаем в шаблоне следующие классы: Инициализация формы Текстовое поле Простое текстовое поле Текстовое поле с подсказкой и описанием Текстовое поле для e-mail Простое поле для e-mail Поле с подсказкой и описанием Поле для ввода пароля Простое поле для пароля Поле с подсказкой и описанием Многострочное текстовое поле Простое многострочное поле Многострочное поле определенного размера с описанием

Read More

Интернационализация — Yii2

Интернационализация (i18n) является частью процесса разработки приложения, которое может быть адаптировано для нескольких языков без изменения программной логики. Это особенно важно для веб-приложений, так как потенциальные пользователи могут приходить из разных стран. В Yii приложении определены два языка: исходный язык и язык перевода. На исходном языке написаны сообщения в коде приложения. Если исходным языком задан английский, то в коде можно использовать конструкцию: Язык перевода определяет, в каком виде будет отображаться текущая страница, т.е. на какой язык будут переведены оригинальные сообщения. Этот параметр может быть задан в конфигурации приложения: Кроме того,…

Read More

Виджеты — Yii2

Виджеты — это некоторые компоненты, которые предназначены в первую очередь для реализации элементов интерфейса и которые можно использовать многократно. Классическим примером такого элемента может быть меню. Меню используется практически на каждой странице сайта и от страницы к странице остается неизменным. То есть, на каждой странице нужно повторять один и тот же код для получения меню и его вывода. Но благодаря виджетам можно избежать этой утомительной процедуры и создать меню только один раз, а затем просто вызывать его. Размещаются виджеты в папке components, которую нужно создать в корне приложения. Для создания виджета…

Read More