Fix a few links on docs/guide-ru/structure-extensions.md (#16773) [skip ci]

This commit is contained in:
bogdan demchenko
2018-10-07 16:26:29 +03:00
committed by Alexander Makarov
parent eec998faac
commit 9d868cf7a2
6 changed files with 91 additions and 21 deletions

67
docs/guide-ru/glossary.md Normal file
View File

@ -0,0 +1,67 @@
# A
## alias
Alias это строка которую Yii использует чтобы указывать на класс или директорию, например '@app/vendor'.
## application
Приложение является центральным объектом на протяжении HTTP запроса. Оно сожержит несколько компонентов и с ними получает информацию из запроса и отправляет ее для дальнейшей обработки.
Объект приложения создается в виде синглтона входным скриптом. Объект приложения доступен из любого места через `\Yii::$app`.
## assets
Asset относится к файлу ресурса. Обычно он содержит JavaScript или CSS код, но может быть чем-то другим, к чему есть доступ по HTTP.
## attribute
Атрибут - это свойство модели (переменная класса или магическое свойство, определенное через `__get()`/`__set()`) в котором хранится **бизнес логика**.
# B
## bundle
Bundle, известный как пакет в Yii 1.1, относится к ряду ресурсов и конфигурационному файлу, который описывает зависимости и списки ресурсов.
# C
## configuration
Конфигурация может относиться как к процессу установки свойств объекта либо к конфигурации файла, хранящего настройки объекта или класса объектов.
# E
## extension
Расширения это набор классов, комплект ресурсов и конфигураций, которые добавляют приложению функциональность.
# I
## installation
Установка это процесс подготовки чего-либо к работе либо путем чтения readme файла или выполнением подготовленного сценария. В случае Yii он устанавливает разрешения и необходимые зависимости.
# M
## module
Модуль это подпрограмма которая содержит элементы MVC, такие как модели, представления, контроллеры и т.д. и может быть использована без главного приложения. Обычно пробрасывая запросы в модуль вместо обработки контроллером.
# N
## namespace
Пространство имен ссылка на [PHP language feature](http://php.net/manual/en/language.namespaces.php) который активно используется в Yii 2.
# P
## package
[Смотри bundle](#bundle).
# V
## vendor
Vendor - это организация или отдельный разработчик, распространяющие код в форме расширений, модулей или библиотек.

View File

@ -244,11 +244,11 @@ $decodedUserName = Html::decode($userName);
Сигнатура методов для формирования радио-переключателей и чекбоксов немного отличается: Сигнатура методов для формирования радио-переключателей и чекбоксов немного отличается:
```php ```php
<?= Html::radio('agree', true, ['label' => 'Я согласен']); <?= Html::radio('agree', true, ['label' => 'Я согласен']) ?>
<?= Html::activeRadio($model, 'agree', ['class' => 'agreement']) <?= Html::activeRadio($model, 'agree', ['class' => 'agreement']) ?>
<?= Html::checkbox('agree', true, ['label' => 'Я согласен']); <?= Html::checkbox('agree', true, ['label' => 'Я согласен']) ?>
<?= Html::activeCheckbox($model, 'agree', ['class' => 'agreement']) <?= Html::activeCheckbox($model, 'agree', ['class' => 'agreement']) ?>
``` ```
Выпадающие и обычные списки могут быть сформированы следующим образом: Выпадающие и обычные списки могут быть сформированы следующим образом:
@ -354,7 +354,7 @@ echo Html::getAttributeName('dates[0]');
<style>.danger { color: #f00; }</style> <style>.danger { color: #f00; }</style>
<?= Html::script('alert("Привет!");', ['defer' => true]); <?= Html::script('alert("Привет!");', ['defer' => true]) ?>
Результатом будет: Результатом будет:

View File

@ -8,6 +8,7 @@ Yii включает полноценный набор средств для у
* Настройка формата ответа (JSON и XML реализованы по умолчанию); * Настройка формата ответа (JSON и XML реализованы по умолчанию);
* Получение сериализованных объектов с нужной вам выборкой полей; * Получение сериализованных объектов с нужной вам выборкой полей;
* Надлежащее форматирование данных и ошибок при их валидации; * Надлежащее форматирование данных и ошибок при их валидации;
* Коллекция пагинаций, фильтров и сортировок;
* Поддержка [HATEOAS](http://en.wikipedia.org/wiki/HATEOAS); * Поддержка [HATEOAS](http://en.wikipedia.org/wiki/HATEOAS);
* Эффективная маршрутизация с надлежащей проверкой HTTP методов; * Эффективная маршрутизация с надлежащей проверкой HTTP методов;
* Встроенная поддержка методов `OPTIONS` и `HEAD`; * Встроенная поддержка методов `OPTIONS` и `HEAD`;
@ -91,8 +92,6 @@ URL и логичные глаголы HTTP.
* `OPTIONS /users`: получение поддерживаемых методов, по которым можно обратится к `/users`; * `OPTIONS /users`: получение поддерживаемых методов, по которым можно обратится к `/users`;
* `OPTIONS /users/123`: получение поддерживаемых методов, по которым можно обратится к `/users/123`. * `OPTIONS /users/123`: получение поддерживаемых методов, по которым можно обратится к `/users/123`.
> Info: Yii автоматически использует множественное число от имени контроллера в URL.
Пробуем получить ответы по API используя `curl`: Пробуем получить ответы по API используя `curl`:
``` ```
@ -172,9 +171,13 @@ Content-Type: application/xml
> Info: Вы наверное заметили, что при обращении к `http://localhost/users` мы получаем информацию с полями, > Info: Вы наверное заметили, что при обращении к `http://localhost/users` мы получаем информацию с полями,
> которые нежелательно показывать, такими как `password_hash` и `auth_key`. Вы можете и должны отфильтровать их как > которые нежелательно показывать, такими как `password_hash` и `auth_key`. Вы можете и должны удалить эти поля как
> описано в разделе «[Ресурсы](rest-resources.md)». > описано в разделе «[Ресурсы](rest-resources.md)».
Дополнительно, вы можете отсортировать коллекции как `http://localhost/users?sort=email` или
`http://localhost/users?sort=-email`. Фильтрация коллекций как `http://localhost/users?filter[id]=10` или
`http://localhost/users?filter[email][like]=gmail.com` возможна при использовании
фильтров данных. Подробнее в секции [Resources](rest-resources.md#filtering-collections).
## Резюме <span id="summary"></span> ## Резюме <span id="summary"></span>

View File

@ -1,7 +1,7 @@
Генерация кода при помощи Gii Генерация кода при помощи Gii
======================== ========================
В этом разделе мы опишем, как использовать [Gii](https://github.com/yiisoft/yii2-gii/blob/master/docs/guide-ru/README.md) для автоматической генерации кода, В этом разделе мы опишем, как использовать [Gii](https://www.yiiframework.com/extension/yiisoft/yii2-gii/doc/guide) для автоматической генерации кода,
реализующего некоторые общие функции вебсайта. Для достижения этой цели всё, что вам нужно, это просто ввести необходимую информацию в соответствии с инструкциями, отображаемыми на веб-страницах Gii. реализующего некоторые общие функции вебсайта. Для достижения этой цели всё, что вам нужно, это просто ввести необходимую информацию в соответствии с инструкциями, отображаемыми на веб-страницах Gii.
В этом руководстве вы узнаете: В этом руководстве вы узнаете:
@ -15,7 +15,7 @@
Запускаем Gii <span id="starting-gii"></span> Запускаем Gii <span id="starting-gii"></span>
------------ ------------
[Gii](https://github.com/yiisoft/yii2-gii/blob/master/docs/guide-ru/README.md) представлен в Yii как [модуль](structure-modules.md). Вы можете активировать Gii, [Gii](https://www.yiiframework.com/extension/yiisoft/yii2-gii/doc/guide) представлен в Yii как [модуль](structure-modules.md). Вы можете активировать Gii,
настроив его в свойстве [[yii\base\Application::modules|modules]]. В зависимости от того, каким образом вы создали приложение, вы можете удостовериться в наличии следующего кода в конфигурационном файле `config/web.php`, настроив его в свойстве [[yii\base\Application::modules|modules]]. В зависимости от того, каким образом вы создали приложение, вы можете удостовериться в наличии следующего кода в конфигурационном файле `config/web.php`,
```php ```php
@ -119,7 +119,7 @@ http://hostname/index.php?r=country%2Findex
* Модели: `models/Country.php` и `models/CountrySearch.php` * Модели: `models/Country.php` и `models/CountrySearch.php`
* Вид: `views/country/*.php` * Вид: `views/country/*.php`
> Info: Gii разработан как тонконастраиваемый и расширяемый инструмент генерации кода. Используя его с умом, вы можете значительно ускорить скорость разработки приложений. Для более подробной информации, пожалуйста, обратитесь к разделу [Gii](https://github.com/yiisoft/yii2-gii/blob/master/docs/guide-ru/README.md). > Info: Gii разработан как тонконастраиваемый и расширяемый инструмент генерации кода. Используя его с умом, вы можете значительно ускорить скорость разработки приложений. Для более подробной информации, пожалуйста, обратитесь к разделу [Gii](https://www.yiiframework.com/extension/yiisoft/yii2-gii/doc/guide).
Заключение <span id="summary"></span> Заключение <span id="summary"></span>

View File

@ -374,25 +374,25 @@ class MyBootstrapClass implements BootstrapInterface
## Базовые расширения <span id="core-extensions"></span> ## Базовые расширения <span id="core-extensions"></span>
Yii предоставляет следующие базовые расширения, которые разрабатывает и поддерживает команда разработчиков Yii. Они все Yii предоставляет следующие базовые расширения, (или ["Official Extensions"](https://www.yiiframework.com/extensions/official)) которые разрабатывает и поддерживает команда разработчиков Yii. Они все
зарегистрированы на [Packagist](https://packagist.org/) и могут быть легко установлены, как описано в подразделе зарегистрированы на [Packagist](https://packagist.org/) и могут быть легко установлены, как описано в подразделе
[Использование расширений](#using-extensions). [Использование расширений](#using-extensions).
- [yiisoft/yii2-apidoc](https://github.com/yiisoft/yii2-apidoc): - [yiisoft/yii2-apidoc](https://www.yiiframework.com/extension/yiisoft/yii2-apidoc):
предоставляет расширяемый и высокопроизводительный генератор документации API. Оно также используется для генерации предоставляет расширяемый и высокопроизводительный генератор документации API. Оно также используется для генерации
документации API фреймворка. документации API фреймворка.
- [yiisoft/yii2-authclient](https://github.com/yiisoft/yii2-authclient): - [yiisoft/yii2-authclient](https://www.yiiframework.com/extension/yiisoft/yii2-authclient):
предоставляет набор наиболее часто используемых клиентов авторизации, таких, как Facebook OAuth2 клиент и GitHub предоставляет набор наиболее часто используемых клиентов авторизации, таких, как Facebook OAuth2 клиент и GitHub
OAuth2 клиент. OAuth2 клиент.
- [yiisoft/yii2-bootstrap](https://github.com/yiisoft/yii2-bootstrap): - [yiisoft/yii2-bootstrap](https://www.yiiframework.com/extension/yiisoft/yii2-bootstrap):
предоставляет набор виджетов, которые являются компонентами и плагинами [Bootstrap](http://getbootstrap.com/). предоставляет набор виджетов, которые являются компонентами и плагинами [Bootstrap](http://getbootstrap.com/).
- [yiisoft/yii2-codeception](https://github.com/yiisoft/yii2-codeception): - [yiisoft/yii2-codeception](https://github.com/yiisoft/yii2-codeception) (deprecated):
предоставляет поддержку тестирования, основанного на [Codeception](http://codeception.com/). предоставляет поддержку тестирования, основанного на [Codeception](http://codeception.com/).
- [yiisoft/yii2-debug](https://github.com/yiisoft/yii2-debug): - [yiisoft/yii2-debug](https://www.yiiframework.com/extension/yiisoft/yii2-debug):
предоставляет поддержку отладки в приложениях Yii. Когда это расширение используется, отладочная панель появится в предоставляет поддержку отладки в приложениях Yii. Когда это расширение используется, отладочная панель появится в
нижней части каждой страницы. Это расширение также предоставляет набор отдельных страниц для отображения более нижней части каждой страницы. Это расширение также предоставляет набор отдельных страниц для отображения более
подробной отладочной информации. подробной отладочной информации.
- [yiisoft/yii2-elasticsearch](https://github.com/yiisoft/yii2-elasticsearch): - [yiisoft/yii2-elasticsearch](https://www.yiiframework.com/extension/yiisoft/yii2-elasticsearch):
предоставляет поддержку использования [Elasticsearch](http://www.elasticsearch.org/). Оно включает в себя поддержку предоставляет поддержку использования [Elasticsearch](http://www.elasticsearch.org/). Оно включает в себя поддержку
основных поисковых запросов, а также реализует шаблон проектирования [Active Record](db-active-record.md), который основных поисковых запросов, а также реализует шаблон проектирования [Active Record](db-active-record.md), который
позволяет хранить записи Active Record в Elasticsearch. позволяет хранить записи Active Record в Elasticsearch.

View File

@ -171,13 +171,13 @@ yii <module_id>/<command>/<sub_command>
из идентификатора модуля, то контроллер и действие определяются исходя из свойства [[yii\base\Module::defaultRoute]], из идентификатора модуля, то контроллер и действие определяются исходя из свойства [[yii\base\Module::defaultRoute]],
которое по умолчанию равно `default`. Таким образом, маршрут `forum` соответствует контроллеру `default` модуля `forum`. которое по умолчанию равно `default`. Таким образом, маршрут `forum` соответствует контроллеру `default` модуля `forum`.
Добавление маршрутов модуля в URL manager необходимо производить до начала работы [[yii\web\UrlManager::parseRequest()]], что не Правила в URL manager для модулей должны быть добавленны перед началом работы [[yii\web\UrlManager::parseRequest()]], что не
позволяет размещать код добавления правил модуля в `init()`, так как инициализация происходит уже после обработки маршрутов. Таким образом, добавление маршрутов необходимо осуществить в [предзагрузке позволяет размещать код добавления правил модуля в `init()`, так как инициализация происходит уже после обработки маршрутов. Таким образом, добавление маршрутов необходимо осуществить в [предзагрузке
модуля](structure-extensions.md#bootstrapping-classes). Хорошей практикой, также, будет объединение всех правил модуля модуля](structure-extensions.md#bootstrapping-classes). Хорошей практикой, также, будет объединение всех правил модуля
при помощи [[\yii\web\GroupUrlRule]]. при помощи [[\yii\web\GroupUrlRule]].
Если же вы используете модуль для [версионирования API](rest-versioning.md), добавление маршрутов необходимо Если же вы используете модуль для [версионирования API](rest-versioning.md), URL правила необходимо добавлять
производить непосредственно в конфигурации `urlManager` приложения. непосредственно в конфигурации `urlManager` приложения.
### Получение доступа к модулям <span id="accessing-modules"></span> ### Получение доступа к модулям <span id="accessing-modules"></span>