Commit af8767b8 by Paul Klimov

Merge pull request #4887 from yupe/master

fix translation errors
parents 6879db3f 80edc70d
...@@ -76,7 +76,7 @@ All Rights Reserved. ...@@ -76,7 +76,7 @@ All Rights Reserved.
* [Объекты доступа к данным (DAO)](db-dao.md) - Соединение с базой данных, простые запросы, транзакции и работа со схемой. * [Объекты доступа к данным (DAO)](db-dao.md) - Соединение с базой данных, простые запросы, транзакции и работа со схемой.
* [Построитель запросов](db-query-builder.md) - Запросы к базе данных через простой слой абстракции. * [Построитель запросов](db-query-builder.md) - Запросы к базе данных через простой слой абстракции.
* [Active Record](db-active-record.md) - Получение объектов AR, работа с ними и опредение связей. * [Active Record](db-active-record.md) - Получение объектов AR, работа с ними и определение связей.
* [Миграции](db-migrations.md) - Контроль версий схемы данных при работе в команде. * [Миграции](db-migrations.md) - Контроль версий схемы данных при работе в команде.
* **TBD** [Sphinx](db-sphinx.md) * **TBD** [Sphinx](db-sphinx.md)
* **TBD** [Redis](db-redis.md) * **TBD** [Redis](db-redis.md)
......
...@@ -29,7 +29,7 @@ echo DatePicker::widget([ ...@@ -29,7 +29,7 @@ echo DatePicker::widget([
- Если вы переопределяете конструктор, то добавьте *последним* аргументом параметр `$config` и затем передайте его в конструктор предка. - Если вы переопределяете конструктор, то добавьте *последним* аргументом параметр `$config` и затем передайте его в конструктор предка.
- Всегда вызывайте конструктор предка *в конце* вашего переопределенного конструктора. - Всегда вызывайте конструктор предка *в конце* вашего переопределенного конструктора.
- Если вы переопределяете метод [[yii\base\Object::init()]], убедитель, что вы вызываете родительскую реализацию этого метода *в начале* вашего метода `init()`. - Если вы переопределяете метод [[yii\base\Object::init()]], убедитесь, что вы вызываете родительскую реализацию этого метода *в начале* вашего метода `init()`.
Пример: Пример:
...@@ -76,7 +76,7 @@ $component = \Yii::createObject([ ...@@ -76,7 +76,7 @@ $component = \Yii::createObject([
Жизненyый цикл объектов класса [[yii\base\Object]] содержит следующие этапы: Жизненyый цикл объектов класса [[yii\base\Object]] содержит следующие этапы:
1. Предварительная инициализация в конструкторе. Здесь вы можете установить значения свойств по умолчанию. 1. Предварительная инициализация в конструкторе. Здесь вы можете установить значения свойств по умолчанию.
2. Конфигурация объекта с помощью `$config`. Во время конфигурации могут быть перезаписаны значения свойст по умолчанию, установленные в кострукторе. 2. Конфигурация объекта с помощью `$config`. Во время конфигурации могут быть перезаписаны значения свойств по умолчанию, установленные в конструкторе.
3. Конфигурация после инициализации в методе [[yii\base\Object::init()|init()]]. Вы можете переопределить этот метод, для проверки готовности объекта и нормализации свойств. 3. Конфигурация после инициализации в методе [[yii\base\Object::init()|init()]]. Вы можете переопределить этот метод, для проверки готовности объекта и нормализации свойств.
4. Вызов методов объекта. 4. Вызов методов объекта.
......
...@@ -164,7 +164,7 @@ echo Menu::widget([ ...@@ -164,7 +164,7 @@ echo Menu::widget([
Данный код создает виджет `Menu` и устанавливает параметр виджета `activeItems` в значение false. Данный код создает виджет `Menu` и устанавливает параметр виджета `activeItems` в значение false.
Также устанавливается параметр `items`, состоящий из элементов меню. Также устанавливается параметр `items`, состоящий из элементов меню.
Обратите внимание что парамт `class` НЕ передается, т.к. полное имя уже указано. Обратите внимание что параметр `class` НЕ передается, т.к. полное имя уже указано.
## Файлы Настроек <a name="configuration-files"></a> ## Файлы Настроек <a name="configuration-files"></a>
......
...@@ -141,7 +141,7 @@ Yii 2.0 расширяет способ использования псевдо ...@@ -141,7 +141,7 @@ Yii 2.0 расширяет способ использования псевдо
каждого базового пространства имен, таким образом загрузчик классов Yii может использоваться без какой-либо дополнительной каждого базового пространства имен, таким образом загрузчик классов Yii может использоваться без какой-либо дополнительной
конфигурации. Например, потому, что `@yii` соответствует установочной папке Yii, класс `yii\webRequest` может быть загружен. конфигурации. Например, потому, что `@yii` соответствует установочной папке Yii, класс `yii\webRequest` может быть загружен.
Если вы используете сторонние библиотеки, такие как Zend Framework, вы можете также определить псевдоним пути `@Zend`, Если вы используете сторонние библиотеки, такие как Zend Framework, вы можете также определить псевдоним пути `@Zend`,
который соответствует установочной папке фреймворка. Единожды сделав это, Yii будет способен автоматичеки загружать любой класс который соответствует установочной папке фреймворка. Единожды сделав это, Yii будет способен автоматически загружать любой класс
Zend Framework. Zend Framework.
Более детальная информация о конфигурациях представлена в разделе [Псевдонимы пути](concept-aliases.md). Более детальная информация о конфигурациях представлена в разделе [Псевдонимы пути](concept-aliases.md).
...@@ -155,7 +155,7 @@ Zend Framework. ...@@ -155,7 +155,7 @@ Zend Framework.
введенной в версии 2.0. Объект представления имеет тип [[yii\web\View]], который представляет собой часть *представление* в введенной в версии 2.0. Объект представления имеет тип [[yii\web\View]], который представляет собой часть *представление* в
шаблоне проектирования MVC. Если вы хотите получить доступ к контроллеру или виджету, то используйте выражение `$this->context`. шаблоне проектирования MVC. Если вы хотите получить доступ к контроллеру или виджету, то используйте выражение `$this->context`.
Для рендеринга частичных представлений, теперь исользуется метод `$this->render()`, а не `$this->renderPartial()`. Для рендеринга частичных представлений, теперь используется метод `$this->render()`, а не `$this->renderPartial()`.
Результат вызова метода `render` теперь должен быть выведен напрямую, т. к `render` возвращает результат рендеринга, а не Результат вызова метода `render` теперь должен быть выведен напрямую, т. к `render` возвращает результат рендеринга, а не
отображает его сразу. Например, отображает его сразу. Например,
...@@ -258,11 +258,11 @@ ActiveForm::end(); ...@@ -258,11 +258,11 @@ ActiveForm::end();
Темы Темы
---- ----
В Yii 2.0 темы работают совершенно по-другому. Теперь они основанны на механизме сопоставления путей исходного файла В Yii 2.0 темы работают совершенно по-другому. Теперь они основаны на механизме сопоставления путей исходного файла
представления с темизированным файлом. Например, если используется сопоставление путей `['/web/views' => '/web/themes/basic']`, представления с темизированным файлом. Например, если используется сопоставление путей `['/web/views' => '/web/themes/basic']`,
то темизированная версия файла представления `/web/views/site/index.php` будет находится в `/web/themes/basic/site/index.php`. то темизированная версия файла представления `/web/views/site/index.php` будет находится в `/web/themes/basic/site/index.php`.
По этой причине, темы могут быть применены к любому файлу представления, даже к представлению, отрендеренному внутри контекста По этой причине, темы могут быть применены к любому файлу представления, даже к представлению, отрендеренному внутри контекста
контроллера или виджета. Тажке, больше не существует компонента `CThemeManager`. Вместо этого, `theme` является конфигурируемым контроллера или виджета. Также, больше не существует компонента `CThemeManager`. Вместо этого, `theme` является конфигурируемым
свойством компонента приложения `view`. свойством компонента приложения `view`.
Более детальная информация представлена в разделе [Темизация](output-theming.md). Более детальная информация представлена в разделе [Темизация](output-theming.md).
...@@ -298,7 +298,7 @@ I18N ...@@ -298,7 +298,7 @@ I18N
Фильтры действий Фильтры действий
---------------- ----------------
Фильтры действий теперь сделаны с помошью поведений. Для определения нового фильтра, унаследуйтесь от [[yii\base\ActionFilter]]. Фильтры действий теперь сделаны с помощью поведений. Для определения нового фильтра, унаследуйтесь от [[yii\base\ActionFilter]].
Для использования фильтра, прикрепите его к контроллеру в качестве поведения. Например, для использования фильтра [[yii\filters\AccessControl]], Для использования фильтра, прикрепите его к контроллеру в качестве поведения. Например, для использования фильтра [[yii\filters\AccessControl]],
следует сделать следующее: следует сделать следующее:
...@@ -443,7 +443,7 @@ $customers = Customer::find()->asArray()->all(); ...@@ -443,7 +443,7 @@ $customers = Customer::find()->asArray()->all();
``` ```
Еще одно изменение связано с тем, что вы больше не можете определять значения по-умолчанию в качестве свойств. Еще одно изменение связано с тем, что вы больше не можете определять значения по-умолчанию в качестве свойств.
Вы должны устанавить их в методе `init` вашего класса, если это требуется. Вы должны установить их в методе `init` вашего класса, если это требуется.
```php ```php
public function init() public function init()
...@@ -453,7 +453,7 @@ public function init() ...@@ -453,7 +453,7 @@ public function init()
} }
``` ```
Тажке в версии 1.1 были некоторые проблемы с переопределением конструктора ActiveRecord. Данные проблемы не присутствуют Также в версии 1.1 были некоторые проблемы с переопределением конструктора ActiveRecord. Данные проблемы не присутствуют
в версии 2.0. Обратите внимание, что при добавлении параметров в конструктор, вам возможно понадобится переопределить метод в версии 2.0. Обратите внимание, что при добавлении параметров в конструктор, вам возможно понадобится переопределить метод
[[yii\db\ActiveRecord::instantiate()]]. Переопределение может не потребоваться, если параметры, передаваемые в конструктор будут [[yii\db\ActiveRecord::instantiate()]]. Переопределение может не потребоваться, если параметры, передаваемые в конструктор будут
иметь значения по-умолчанию, например `null`. иметь значения по-умолчанию, например `null`.
......
...@@ -33,7 +33,7 @@ public function behaviors() ...@@ -33,7 +33,7 @@ public function behaviors()
} }
``` ```
Когда ограничение частоты запросов включено, по умолчанию каждый ответ будет возващаться со следующими HTTP-заголовками, содержащими Когда ограничение частоты запросов включено, по умолчанию каждый ответ будет возвращаться со следующими HTTP-заголовками, содержащими
информацию о текущих ограничениях количества запросов: информацию о текущих ограничениях количества запросов:
* `X-Rate-Limit-Limit`: максимальное количество запросов, разрешенное в течение периода времени; * `X-Rate-Limit-Limit`: максимальное количество запросов, разрешенное в течение периода времени;
......
...@@ -51,7 +51,7 @@ http://localhost/users?fields=id,email&expand=profile ...@@ -51,7 +51,7 @@ http://localhost/users?fields=id,email&expand=profile
[[yii\db\ActiveRecord::fields()]] возвращает только те атрибуты которые были объявлены в схеме БД. [[yii\db\ActiveRecord::fields()]] возвращает только те атрибуты которые были объявлены в схеме БД.
Вы можете переопределить `fields()` при этом добавить, удалить, переименовать или переобъявить поля. Возвращаемое значение `fields()` Вы можете переопределить `fields()` при этом добавить, удалить, переименовать или переобъявить поля. Возвращаемое значение `fields()`
должно быть массивом. Ключи массива это имена полей, и значения массива могут быть именами свойств/атрибутов или анонимных функций, возвращающих соответсвующее значение полей. должно быть массивом. Ключи массива это имена полей, и значения массива могут быть именами свойств/атрибутов или анонимных функций, возвращающих соответствующее значение полей.
Если имя атрибута такое же, как ключ массива вы можете не заполнять значение. Например: Если имя атрибута такое же, как ключ массива вы можете не заполнять значение. Например:
```php ```php
// явное перечисление всех атрибутов, лучше всего использовать когда вы хотите убедиться что изменение // явное перечисление всех атрибутов, лучше всего использовать когда вы хотите убедиться что изменение
...@@ -61,7 +61,7 @@ public function fields() ...@@ -61,7 +61,7 @@ public function fields()
return [ return [
// название поля совпадает с названием атрибута // название поля совпадает с названием атрибута
'id', 'id',
// ключ массива "email", соответсвует значению атрибута "email_address" // ключ массива "email", соответствует значению атрибута "email_address"
'email' => 'email_address', 'email' => 'email_address',
// ключ массива "name", это PHP callback функция возвращающая значение // ключ массива "name", это PHP callback функция возвращающая значение
'name' => function () { 'name' => function () {
...@@ -168,7 +168,7 @@ class User extends ActiveRecord implements Linkable ...@@ -168,7 +168,7 @@ class User extends ActiveRecord implements Linkable
## Коллекции <a name="collections"></a> ## Коллекции <a name="collections"></a>
Объекты ресурсов могут групироваться в *коллекции*. Каждая коллекция включает список объектов ресурсов одного типа. Объекты ресурсов могут группироваться в *коллекции*. Каждая коллекция включает список объектов ресурсов одного типа.
Так как коллекции представляются в виде массива, их удобнее использовать как [проводник данных](output-data-providers.md). Так как коллекции представляются в виде массива, их удобнее использовать как [проводник данных](output-data-providers.md).
Так как проводник данных поддерживает операции сортировки, разбиения на страницы это удобно использовать для RESTful API. Так как проводник данных поддерживает операции сортировки, разбиения на страницы это удобно использовать для RESTful API.
...@@ -192,7 +192,7 @@ class PostController extends Controller ...@@ -192,7 +192,7 @@ class PostController extends Controller
} }
``` ```
При отправке ответа RESTful API, [[yii\rest\Serializer]] добавит текущую страницу ресурсов и сеарилизует все объекты ресурсов. При отправке ответа RESTful API, [[yii\rest\Serializer]] добавит текущую страницу ресурсов и сериализует все объекты ресурсов.
Кроме того, [[yii\rest\Serializer]] добавит HTTP заголовки содержащие информацию о нумерации страниц: Кроме того, [[yii\rest\Serializer]] добавит HTTP заголовки содержащие информацию о нумерации страниц:
* `X-Pagination-Total-Count`: Количество ресурсов; * `X-Pagination-Total-Count`: Количество ресурсов;
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
* Как включить Gii в приложении; * Как включить Gii в приложении;
* Как использовать Gii для создания Active Record класса; * Как использовать Gii для создания Active Record класса;
* Как использовать Gii для генерироции кода реализующего CRUD для таблицы БД. * Как использовать Gii для генерации кода, реализующего CRUD для таблицы БД.
* Как настроить код генерируемый Gii. * Как настроить код генерируемый Gii.
...@@ -62,7 +62,7 @@ http://hostname/index.php?r=gii ...@@ -62,7 +62,7 @@ http://hostname/index.php?r=gii
![Предварительный просмотр генератора модели](images/start-gii-model-preview.png) ![Предварительный просмотр генератора модели](images/start-gii-model-preview.png)
Если необхадимо перезаписать существующего файла, установите флажок рядом с "переписать", а затем нажмите кнопку "Создать". При создании нового файла, вы можете просто нажать "Создать". Если необходимо перезаписать существующего файла, установите флажок рядом с "переписать", а затем нажмите кнопку "Создать". При создании нового файла, вы можете просто нажать "Создать".
Далее, вы увидите страницу подтверждения, указывающую что код был успешно создана. Если ваш файл уже существующествует, вы также увидите сообщение о том, что он был переписан с вновь сгенерированным кодом. Далее, вы увидите страницу подтверждения, указывающую что код был успешно создана. Если ваш файл уже существующествует, вы также увидите сообщение о том, что он был переписан с вновь сгенерированным кодом.
...@@ -94,7 +94,7 @@ CRUD расшифровывается как Создать, Читать, Об ...@@ -94,7 +94,7 @@ CRUD расшифровывается как Создать, Читать, Об
http://hostname/index.php?r=country/index http://hostname/index.php?r=country/index
``` ```
Вы увидите таблицу данных показывающией страны из таблицы базы данных. Вы можете сортировать, или фильтр необходимо ввести условия фильтрации в заголовки столбцов. Вы увидите таблицу данных, показывающую страны из таблицы базы данных. Вы можете сортировать, или фильтр необходимо ввести условия фильтрации в заголовки столбцов.
Для каждой страны отображающейся в таблице, вы можете просмотреть подробную информацию, обновить ее или удалить. Для каждой страны отображающейся в таблице, вы можете просмотреть подробную информацию, обновить ее или удалить.
Вы также можете нажать на кнопку "Создать страну" в верхней части таблицы и будет предоставлена форма для создания новой страны. Вы также можете нажать на кнопку "Создать страну" в верхней части таблицы и будет предоставлена форма для создания новой страны.
......
...@@ -122,7 +122,7 @@ DocumentRoot "path/to/basic/web" ...@@ -122,7 +122,7 @@ DocumentRoot "path/to/basic/web"
<Directory "path/to/basic/web"> <Directory "path/to/basic/web">
RewriteEngine on RewriteEngine on
# Если запрашиваемая в URL директория или файл сущесвуют обращаемся к ним напрямую # Если запрашиваемая в URL директория или файл существуют обращаемся к ним напрямую
RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-d
# Если нет - перенаправляем запрос на index.php # Если нет - перенаправляем запрос на index.php
......
Запуск приложения Запуск приложения
==================== ====================
После установки Yii, базовое приложение будет доступно либо по URL `http://hostname/basic/web/index.php`, либо по `http://hostname/index.php`, в зависимости от настроек Web сервера. Данный раздел - общее введение в орагнизацию кода, встроенный функционал и обработку обращений приложением Yii. После установки Yii, базовое приложение будет доступно либо по URL `http://hostname/basic/web/index.php`, либо по `http://hostname/index.php`, в зависимости от настроек Web сервера. Данный раздел - общее введение в организацию кода, встроенный функционал и обработку обращений приложением Yii.
> Информация: Далее, в данном руководстве предполагается что Yii установлен в директорию `basic/web`, которая, в свою очередь, установлена как корневой каталог в настройках Web сервера. В результате, обратившись по URL `http://hostname/index.php` Вы получите доступ к приложению, расположенному в `basic/web`. Детальнее с процессом начальной настройки можно познакомиться в разделе [Установка Yii](start-installation.md). > Информация: Далее, в данном руководстве предполагается что Yii установлен в директорию `basic/web`, которая, в свою очередь, установлена как корневой каталог в настройках Web сервера. В результате, обратившись по URL `http://hostname/index.php` Вы получите доступ к приложению, расположенному в `basic/web`. Детальнее с процессом начальной настройки можно познакомиться в разделе [Установка Yii](start-installation.md).
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
* на странице "Contact" находится форма обратной связи, на которой пользователь может обратиться к разработчику по e-mail * на странице "Contact" находится форма обратной связи, на которой пользователь может обратиться к разработчику по e-mail
* на странице "Login" отображается форма авторизации. Попытайтесь авторизоваться с логином/паролем "admin/admin". Обратите внимание на изменение раздела "Login" в главном меню на "Logout". * на странице "Login" отображается форма авторизации. Попытайтесь авторизоваться с логином/паролем "admin/admin". Обратите внимание на изменение раздела "Login" в главном меню на "Logout".
Эти страницы используют смежный хидер (шапка сайта) и футер (подвал). В "шапке" находится главное меню, при помощи которого пользователь перемещается по сайту. В "подвале" - копирайт и общая информация. Эти страницы используют смежный хедер (шапка сайта) и футер (подвал). В "шапке" находится главное меню, при помощи которого пользователь перемещается по сайту. В "подвале" - копирайт и общая информация.
В самой верхней части окна Вы будете видеть системные сообщения Yii - журнал, отладочную информацию, сообщения об ошибках, запросы к базе данных и т.п. Выводом данной информации руководит [встроенный отладчик](tool-debugger.md), он записывает и отображает информацию о ходе выполнения приложения. В самой верхней части окна Вы будете видеть системные сообщения Yii - журнал, отладочную информацию, сообщения об ошибках, запросы к базе данных и т.п. Выводом данной информации руководит [встроенный отладчик](tool-debugger.md), он записывает и отображает информацию о ходе выполнения приложения.
......
...@@ -56,13 +56,13 @@ class PostController extends Controller ...@@ -56,13 +56,13 @@ class PostController extends Controller
под названием `view`. В противном случае будет брошено исключение. под названием `view`. В противном случае будет брошено исключение.
В действии `create` (определенном методом `actionCreate()`), код аналогичен. Он сначала пытается загрузить [модель](structure-models.md) В действии `create` (определенном методом `actionCreate()`), код аналогичен. Он сначала пытается загрузить [модель](structure-models.md)
с помощью данных из запроса и сохранить модель. Если все прошло успешно, то код перенаправляет барузер на действие `view` с ID только с помощью данных из запроса и сохранить модель. Если все прошло успешно, то код перенаправляет браузер на действие `view` с ID только
что созданной модели. В противном случае он отобразит представление `create`, через которое пользователь может заполнить нужные данные. что созданной модели. В противном случае он отобразит представление `create`, через которое пользователь может заполнить нужные данные.
## Маршруты <a name="routes"></a> ## Маршруты <a name="routes"></a>
Конечные пользователи обращаются к действиям через так называемые *маршурты*. Маршрут это строка, состоящая из следующих частей: Конечные пользователи обращаются к действиям через так называемые *маршруты*. Маршрут это строка, состоящая из следующих частей:
* ID модуля: он существует, только если контроллер принадлежит не приложению, а [модулю](structure-modules.md); * ID модуля: он существует, только если контроллер принадлежит не приложению, а [модулю](structure-modules.md);
* ID контроллера: строка, которая уникально идентифицирует контроллер среди всех других контроллеров одного и того же приложения * ID контроллера: строка, которая уникально идентифицирует контроллер среди всех других контроллеров одного и того же приложения
...@@ -105,7 +105,7 @@ class SiteController extends Controller ...@@ -105,7 +105,7 @@ class SiteController extends Controller
### ID контроллеров <a name="controller-ids"></a> ### ID контроллеров <a name="controller-ids"></a>
Обычно контроллер сделан таким образом, что он должен обрабатывать запросы, связанные с определенным ресурсом. Обычно контроллер сделан таким образом, что он должен обрабатывать запросы, связанные с определенным ресурсом.
Именно по этим причинам, ID контроллеров обычно являются существительные, ссылающиеся на ресурс, который они обрабывают. Именно по этим причинам, ID контроллеров обычно являются существительные, ссылающиеся на ресурс, который они обрабатывают.
Например, вы можете использовать `article` в качестве ID контроллера, которые отвечает за обработку данных статей. Например, вы можете использовать `article` в качестве ID контроллера, которые отвечает за обработку данных статей.
По-умолчанию, ID контроллеров должны содержать только следующие символы: Английские буквы в нижнем регистре, цифры, подчеркивания, По-умолчанию, ID контроллеров должны содержать только следующие символы: Английские буквы в нижнем регистре, цифры, подчеркивания,
...@@ -114,7 +114,7 @@ class SiteController extends Controller ...@@ -114,7 +114,7 @@ class SiteController extends Controller
ID контроллеров также могут содержать префикс подпапки. Например, в `admin/article` часть `article` является контроллером в ID контроллеров также могут содержать префикс подпапки. Например, в `admin/article` часть `article` является контроллером в
подпапке `admin` в [[yii\base\Application::controllerNamespace|пространстве имен контроллеров]]. подпапке `admin` в [[yii\base\Application::controllerNamespace|пространстве имен контроллеров]].
Допустимыми символами для префиксов подпаков являются: Английские буквы в нижнем и верхнем регистре, символы, подчеркивания и Допустимыми символами для префиксов подпапок являются: Английские буквы в нижнем и верхнем регистре, символы, подчеркивания и
слэш, где слэш используется в качестве разграничителя для многовложенных подпапок (например `panels/admin`). слэш, где слэш используется в качестве разграничителя для многовложенных подпапок (например `panels/admin`).
...@@ -150,7 +150,7 @@ ID контроллеров также могут содержать префи ...@@ -150,7 +150,7 @@ ID контроллеров также могут содержать префи
Вы можете сконфигурировать [[yii\base\Application::controllerMap|карту контроллеров]] для того, чтобы преодолеть Вы можете сконфигурировать [[yii\base\Application::controllerMap|карту контроллеров]] для того, чтобы преодолеть
описанные выше ограничения именования ID контроллеров и названий классов. В основном это очень удобно, когда вы используете описанные выше ограничения именования ID контроллеров и названий классов. В основном это очень удобно, когда вы используете
сторонние контроллеры, именование которых вы не можете контроллировать. сторонние контроллеры, именование которых вы не можете контролировать.
Вы можете сконфигурировать [[yii\base\Application::controllerMap|карту контроллеров]] в [настройках приложения](structure-applications.md#application-configurations) Вы можете сконфигурировать [[yii\base\Application::controllerMap|карту контроллеров]] в [настройках приложения](structure-applications.md#application-configurations)
следующим образом: следующим образом:
...@@ -279,7 +279,7 @@ public function actions() ...@@ -279,7 +279,7 @@ public function actions()
названия класса действия или [конфигурация](concept-configurations.md). В отличие от встроенных действий, ID отдельных действий могут названия класса действия или [конфигурация](concept-configurations.md). В отличие от встроенных действий, ID отдельных действий могут
содержать произвольные символы, до тех пор пока они определены в методе `actions()`. содержать произвольные символы, до тех пор пока они определены в методе `actions()`.
Для создания отдельного действия, вы должны унаследоваться от класса [[yii\base\Action]] или его потомков, и реализовать Для создания отдельного действия, вы должны наследоваться от класса [[yii\base\Action]] или его потомков, и реализовать
метод `run()` с областью видимости public. Роль метода `run()` аналогична другим методам действий. Например, метод `run()` с областью видимости public. Роль метода `run()` аналогична другим методам действий. Например,
```php ```php
...@@ -327,7 +327,7 @@ public function actionForward() ...@@ -327,7 +327,7 @@ public function actionForward()
### Параметры действий <a name="action-parameters"></a> ### Параметры действий <a name="action-parameters"></a>
Методы действий для встроенных действий и методы `run()` для отдельных действий могут принимать параметры, Методы действий для встроенных действий и методы `run()` для отдельных действий могут принимать параметры,
называемые *параметры действий*. Их значения беруться из запросов. Для [[yii\web\Application|Веб приложений]], называемые *параметры действий*. Их значения берутся из запросов. Для [[yii\web\Application|Веб приложений]],
значение каждого из параметров действия берется из `$_GET`, используя название параметра в качестве ключа; значение каждого из параметров действия берется из `$_GET`, используя название параметра в качестве ключа;
для [[yii\console\Application|консольных приложений]], они соответствуют аргументам командной строки. для [[yii\console\Application|консольных приложений]], они соответствуют аргументам командной строки.
...@@ -354,7 +354,7 @@ class PostController extends Controller ...@@ -354,7 +354,7 @@ class PostController extends Controller
* `http://hostname/index.php?r=post/view&id=123&version=2`: параметрам `$id` и `$version` будут присвоены * `http://hostname/index.php?r=post/view&id=123&version=2`: параметрам `$id` и `$version` будут присвоены
значения `'123'` и `'2'` соответственно; значения `'123'` и `'2'` соответственно;
* `http://hostname/index.php?r=post/view`: будет брошено исключение [[yii\web\BadRequestHttpException]], т. к. * `http://hostname/index.php?r=post/view`: будет брошено исключение [[yii\web\BadRequestHttpException]], т. к.
обязательный праметр `$id` не был указан в запросе; обязательный параметр `$id` не был указан в запросе;
* `http://hostname/index.php?r=post/view&id[]=123`: будет брошено исключение [[yii\web\BadRequestHttpException]], т. к. * `http://hostname/index.php?r=post/view&id[]=123`: будет брошено исключение [[yii\web\BadRequestHttpException]], т. к.
параметр `$id` получил неверное значение `['123']`. параметр `$id` получил неверное значение `['123']`.
...@@ -419,7 +419,7 @@ class SiteController extends Controller ...@@ -419,7 +419,7 @@ class SiteController extends Controller
действия будет отменено; действия будет отменено;
* По-умолчанию, каждый вызов метода `beforeAction()` вызовет событие `beforeAction`, на которое вы можете назначить обработчики. * По-умолчанию, каждый вызов метода `beforeAction()` вызовет событие `beforeAction`, на которое вы можете назначить обработчики.
4. Контроллер запускает действие: 4. Контроллер запускает действие:
* Параметры действия будут проанализированы и заполенены из данных запроса. * Параметры действия будут проанализированы и заполнены из данных запроса.
5. Контроллер последовательно вызывает методы `afterAction` контроллера, модуля (если контроллер принадлежит модулю) и приложения. 5. Контроллер последовательно вызывает методы `afterAction` контроллера, модуля (если контроллер принадлежит модулю) и приложения.
* По-умолчанию, каждый вызов метода `afterAction()` вызовет событие `afterAction`, на которое вы можете назначить обработчики. * По-умолчанию, каждый вызов метода `afterAction()` вызовет событие `afterAction`, на которое вы можете назначить обработчики.
6. Приложение, получив результат выполнения действия, присвоит его объекту [response](runtime-responses.md). 6. Приложение, получив результат выполнения действия, присвоит его объекту [response](runtime-responses.md).
......
...@@ -10,7 +10,7 @@ Yii приложения организованы согласно шаблон ...@@ -10,7 +10,7 @@ Yii приложения организованы согласно шаблон
Кроме MVC, Yii приложения также имеют следующие сущности: Кроме MVC, Yii приложения также имеют следующие сущности:
* [входные скрипты](structure-entry-scripts.md): это PHP скрипты, которые доступны напрямую конечному пользователю приложения. * [входные скрипты](structure-entry-scripts.md): это PHP скрипты, которые доступны напрямую конечному пользователю приложения.
Они отвественны за запуск и обработку входящего запроса; Они ответственны за запуск и обработку входящего запроса;
* [приложения](structure-applications.md): это глобально доступные объекты, которые осуществляют корректную работу различных * [приложения](structure-applications.md): это глобально доступные объекты, которые осуществляют корректную работу различных
компонентов приложения и их координацию для обработки запроса; компонентов приложения и их координацию для обработки запроса;
* [компоненты приложения](structure-application-components.md): это объекты, зарегистрированные в приложении и предоставляющие * [компоненты приложения](structure-application-components.md): это объекты, зарегистрированные в приложении и предоставляющие
......
...@@ -198,4 +198,4 @@ public function run() ...@@ -198,4 +198,4 @@ public function run()
В случае, когда виджет не содержит логики, а содержит только код, отвечающий за вывод разметки, он мало В случае, когда виджет не содержит логики, а содержит только код, отвечающий за вывод разметки, он мало
отличается от [представления](structure-views.md). В действительности, единственное его отличие состоит в том, что отличается от [представления](structure-views.md). В действительности, единственное его отличие состоит в том, что
виджет представляет собой отдельный и удобный для распространения класс, в то время как представление - это виджет представляет собой отдельный и удобный для распространения класс, в то время как представление - это
обычный PHP скрипт, подходящий для использования только лишь в конретном приложении. обычный PHP скрипт, подходящий для использования только лишь в конкретном приложении.
\ No newline at end of file \ No newline at end of file
...@@ -106,7 +106,7 @@ public function rules() ...@@ -106,7 +106,7 @@ public function rules()
- `format`: формат даты/времени, согласно которому должна быть сделана проверка. Чтобы узнать больше о формате - `format`: формат даты/времени, согласно которому должна быть сделана проверка. Чтобы узнать больше о формате
строки, пожалуйста, посмотрите [руководство PHP по date_create_from_format()](http://www.php.net/manual/ru/datetime.createfromformat.php) строки, пожалуйста, посмотрите [руководство PHP по date_create_from_format()](http://www.php.net/manual/ru/datetime.createfromformat.php)
Значением по умолчанию является `'Y-m-d'`. Значением по умолчанию является `'Y-m-d'`.
- `timestampAttribute`: имя атрибута, которому этот валидатор может передать UNIX timestamp, конвентированный - `timestampAttribute`: имя атрибута, которому этот валидатор может передать UNIX timestamp, конвертированный
из строки даты/времени. из строки даты/времени.
...@@ -173,7 +173,7 @@ function foo($model, $attribute) { ...@@ -173,7 +173,7 @@ function foo($model, $attribute) {
- `allowName`: можно ли передавать в атрибут имя (пример: `John Smith <john.smith@example.com>`). По умолчанию - false. - `allowName`: можно ли передавать в атрибут имя (пример: `John Smith <john.smith@example.com>`). По умолчанию - false.
- `checkDNS`, проверяет, существует ли доменное имя для введенного адреса (и A, и MX запись). - `checkDNS`, проверяет, существует ли доменное имя для введенного адреса (и A, и MX запись).
Учтите, что проверка может закончится неудачей, что может быть вызвано временными проблемами с DNS, даже если Учтите, что проверка может закончится неудачей, что может быть вызвано временными проблемами с DNS, даже если
email-адрес корректен. По умоланию - false. email-адрес корректен. По умолчанию - false.
- `enableIDN`, нужно ли учитывать IDN (многоязычные доменные имена). По умолчанию - false. Учтите, что для использования - `enableIDN`, нужно ли учитывать IDN (многоязычные доменные имена). По умолчанию - false. Учтите, что для использования
IDN-валидации вам нужно установить и включить PHP расширение `intl`, иначе будет выброшено исключение. IDN-валидации вам нужно установить и включить PHP расширение `intl`, иначе будет выброшено исключение.
...@@ -240,7 +240,7 @@ function foo($model, $attribute) { ...@@ -240,7 +240,7 @@ function foo($model, $attribute) {
допустимы. допустимы.
- `mimeTypes`: список MIME-типов которые допустимы для загрузки. Это может быть или массив, или строка, - `mimeTypes`: список MIME-типов которые допустимы для загрузки. Это может быть или массив, или строка,
содержащая MIME-типы файлов, разделенные пробелом или запятой (пример: "image/jpeg, image/png"). содержащая MIME-типы файлов, разделенные пробелом или запятой (пример: "image/jpeg, image/png").
Имена mime-типов не чувствительны к регистру. По умолачанию - null, что значит, что допустимы все MIME-типы. Имена mime-типов не чувствительны к регистру. По умолчанию - null, что значит, что допустимы все MIME-типы.
- `minSize`: минимальный размер файла в байтах, разрешенный для загрузки. По умолчанию - null, что значит, что нет - `minSize`: минимальный размер файла в байтах, разрешенный для загрузки. По умолчанию - null, что значит, что нет
минимального лимита. минимального лимита.
- `maxSize`: максимальный размер файла в байтах, разрешенный для загрузки. По умолчанию - null, что значит, что нет - `maxSize`: максимальный размер файла в байтах, разрешенный для загрузки. По умолчанию - null, что значит, что нет
...@@ -298,9 +298,9 @@ function foo($model, $attribute) { ...@@ -298,9 +298,9 @@ function foo($model, $attribute) {
валидатор и наследует все его свойства. Кроме того, он поддерживает следующие дополнительные свойства, специфичные валидатор и наследует все его свойства. Кроме того, он поддерживает следующие дополнительные свойства, специфичные
для валидации изображений: для валидации изображений:
- `minWidth`: минимальныя ширина изображения. По умолчанию null, что значит, что нет нижнего лимита. - `minWidth`: минимальная ширина изображения. По умолчанию null, что значит, что нет нижнего лимита.
- `maxWidth`: максимальная ширина изображения. По умолчанию null, что значит, что нет верхнего лимита. - `maxWidth`: максимальная ширина изображения. По умолчанию null, что значит, что нет верхнего лимита.
- `minHeight`: минимальныя высота изображения. По умолчанию null, что значит, что нет нижнего лимита. - `minHeight`: минимальная высота изображения. По умолчанию null, что значит, что нет нижнего лимита.
- `maxHeight`: максимальная высота изображения. По умолчанию null, что значит, что нет верхнего лимита. - `maxHeight`: максимальная высота изображения. По умолчанию null, что значит, что нет верхнего лимита.
...@@ -319,7 +319,7 @@ function foo($model, $attribute) { ...@@ -319,7 +319,7 @@ function foo($model, $attribute) {
- `strict`: должно ли сравнение входящего значения со списком значений быть строгим (учитывать тип данных). - `strict`: должно ли сравнение входящего значения со списком значений быть строгим (учитывать тип данных).
По умолчанию false. По умолчанию false.
- `not`: должен ли результат проверки быть инвертирован. По умолчанию - false. Если свойство установлено в true, - `not`: должен ли результат проверки быть инвертирован. По умолчанию - false. Если свойство установлено в true,
валидатор проверяет, что входящее значение НЕ соответсвует ни одному из значений, указанных в `range`. валидатор проверяет, что входящее значение НЕ соответствует ни одному из значений, указанных в `range`.
- `allowArray`: устанавливает, допустимо ли использовать массив в качестве входных данных. Если установлено в true - `allowArray`: устанавливает, допустимо ли использовать массив в качестве входных данных. Если установлено в true
и входящие данные являются массивом, для каждого элемента входящего массива должно быть найдено соответствие в и входящие данные являются массивом, для каждого элемента входящего массива должно быть найдено соответствие в
`range`. `range`.
...@@ -385,7 +385,7 @@ function foo($model, $attribute) { ...@@ -385,7 +385,7 @@ function foo($model, $attribute) {
Этот валидатор проверяет, являются ли входящие значения не пустыми. Этот валидатор проверяет, являются ли входящие значения не пустыми.
- `requiredValue`: желаемое значение, которому должны соответствовать проверямые данные. Если не установлено, - `requiredValue`: желаемое значение, которому должны соответствовать проверяемые данные. Если не установлено,
это значит, что данные должны быть не пусты. это значит, что данные должны быть не пусты.
- `strict`: учитывать или нет соответствие типу данных при валидации (строгое сравнение). - `strict`: учитывать или нет соответствие типу данных при валидации (строгое сравнение).
Если `requiredValue` не установлено, а это свойство установлено в true, валидатор проверит, что входящее значение Если `requiredValue` не установлено, а это свойство установлено в true, валидатор проверит, что входящее значение
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment