mirror of
https://github.com/yiisoft/yii2.git
synced 2025-08-26 14:26:54 +08:00
[EN] Typo in tutorial-console.md
[UK] updating existing chapters
This commit is contained in:
@ -1,11 +1,15 @@
|
||||
Псевдоніми
|
||||
==========
|
||||
|
||||
Псевдоніми використовуються для позначення шляхів до файлів або URL адрес і допомагають уникнути використання абсолютних шляхів
|
||||
або URL в коді. Для того, щоб не переплутати псевдонім із звичайним шляхом до файлу або URL, він повинен починатися з `@`. В Yii
|
||||
є багато заздалегідь визначених псевдонімів. Наприклад, `@yii` вказує на директорію, в яку був встановлений
|
||||
Yii framework, а `@web` можна використовувати для отримання базового URL поточного додатку.
|
||||
Псевдоніми використовуються для представлення шляхів до файлів або URL адрес
|
||||
і допомагають уникнути використання абсолютних шляхів або URL у коді.
|
||||
Для того, щоб не переплутати псевдонім із звичайним шляхом до файлу або URL,
|
||||
він повинен починатися із символу `@`. Якщо псевдонім не починається із
|
||||
символу `@` - його буде додано автоматично.
|
||||
|
||||
В Yii є багато заздалегідь визначених псевдонімів. Наприклад,
|
||||
`@yii` вказує на директорію, в яку був встановлений Yii framework,
|
||||
а `@web` можна використовувати для отримання базового URL поточного додатку.
|
||||
|
||||
Створення псевдонімів <span id="defining-aliases"></span>
|
||||
---------------------
|
||||
|
Binary file not shown.
Before Width: | Height: | Size: 150 KiB After Width: | Height: | Size: 112 KiB |
@ -19,7 +19,7 @@ Yii – це універсальний фреймворк і може бути
|
||||
|
||||
Якщо ви вже знайомі з іншими фреймворками, вам напевно буде цікаво порівняти їх із Yii:
|
||||
|
||||
- Як і багато інших PHP-фреймворків, Yii втілює шаблон проектування MVC (Model-View-Controller) та
|
||||
- Як і багато інших PHP-фреймворків, Yii втілює архітектурний шаблон MVC (Model-View-Controller) та
|
||||
сприяє організації коду відповідно до вимог шаблону.
|
||||
- Yii дотримується філософії простого й елегантного коду. Yii ніколи не буде намагатись пере-ускладнювати дизайн
|
||||
тільки заради слідування будь-яким шаблонам проектування.
|
||||
|
@ -19,6 +19,27 @@
|
||||
до даних поточного аутентифікованого користувача. Для покращення швидкодії можна спробувати зберігати цю
|
||||
інформацію в кеш чи NoSQL-сховищі.
|
||||
|
||||
Реалізація у моделі `User` може виглядати наступним чином:
|
||||
|
||||
```php
|
||||
public function getRateLimit($request, $action)
|
||||
{
|
||||
return [$this->rateLimit, 1]; // $rateLimit requests per second
|
||||
}
|
||||
|
||||
public function loadAllowance($request, $action)
|
||||
{
|
||||
return [$this->allowance, $this->allowance_updated_at];
|
||||
}
|
||||
|
||||
public function saveAllowance($request, $action, $allowance, $timestamp)
|
||||
{
|
||||
$this->allowance = $allowance;
|
||||
$this->allowance_updated_at = $timestamp;
|
||||
$this->save();
|
||||
}
|
||||
```
|
||||
|
||||
Як тільки відповідний інтерфейс буде реалізований у класі identity, Yii почне автоматично перевіряти обмеження
|
||||
частоти запитів за допомогою фільтра дій [[yii\filters\RateLimiter]] для [[yii\rest\Controller]]. При перевищенні
|
||||
обмежень буде викинуто виключення [[yii\web\TooManyRequestsHttpException]].
|
||||
|
@ -220,7 +220,7 @@ use yii\widgets\LinkPager;
|
||||
Щоб побачити як весь вищезазначений код працює, відкрийте в браузері наступний URL:
|
||||
|
||||
```
|
||||
http://hostname/index.php?r=country/index
|
||||
http://hostname/index.php?r=country%2Findex
|
||||
```
|
||||
|
||||

|
||||
@ -230,7 +230,7 @@ http://hostname/index.php?r=country/index
|
||||
Придивившись більш уважно, ви побачите, що URL в браузері також змінюється на
|
||||
|
||||
```
|
||||
http://hostname/index.php?r=country/index&page=2
|
||||
http://hostname/index.php?r=country%2Findex&page=2
|
||||
```
|
||||
|
||||
За лаштунками, [[yii\data\Pagination|Pagination]] надає всю необхідну функціональність для розділення набору даних на сторінки:
|
||||
|
@ -187,7 +187,7 @@ use yii\widgets\ActiveForm;
|
||||
Щоб побачити, як це працює, відкрийте в браузері наступний URL:
|
||||
|
||||
```
|
||||
http://hostname/index.php?r=site/entry
|
||||
http://hostname/index.php?r=site%2Fentry
|
||||
```
|
||||
|
||||
Ви побачите сторінку з формою і двома полями для заповнення. Перед кожним полем є надпис, який вказує, яку саме
|
||||
|
@ -112,7 +112,7 @@ CRUD - це акронім від англійських слів Create, Read,
|
||||
Щоб побачити як це працює, відкрийте в браузері наступний URL:
|
||||
|
||||
```
|
||||
http://hostname/index.php?r=country/index
|
||||
http://hostname/index.php?r=country%2Findex
|
||||
```
|
||||
|
||||
Ви побачите таблицю даних, що показує країни з таблиці бази даних. Ви можете відсортувати дані,
|
||||
|
@ -102,7 +102,7 @@ use yii\helpers\Html;
|
||||
Після створення дії і представлення, ви можете перейти на нову сторінку по наступному URL:
|
||||
|
||||
```
|
||||
http://hostname/index.php?r=site/say&message=Привіт+світ
|
||||
http://hostname/index.php?r=site%2Fsay&message=Привіт+світ
|
||||
```
|
||||
|
||||

|
||||
|
@ -98,24 +98,39 @@
|
||||
Перевірка встановлення <span id="verifying-installation"></span>
|
||||
----------------------
|
||||
|
||||
Після встановлення, ви можете використовувати свій браузер для доступу до встановленого додатку Yii за наступним URL:
|
||||
Після успішного встановлення ви можете налаштувати свій веб-сервер (див. наступний розділ)
|
||||
або використати [вбудований веб-сервер PHP](https://secure.php.net/manual/en/features.commandline.webserver.php),
|
||||
виконавши наступну консольну команду із директорії `web`:
|
||||
|
||||
```
|
||||
http://localhost/basic/web/index.php
|
||||
```bash
|
||||
php yii serve
|
||||
```
|
||||
|
||||
Даний URL припускає, що Yii встановлено в директорію `basic` у базовій директорії вашого локального веб-сервера (`localhost`).
|
||||
Вам, можливо, буде потрібно налаштувати його на своїй системі.
|
||||
> Note: За замовчуванням, HTTP-server буде прослуховувати 8080 порт. Проте,
|
||||
якщо цей порт вже використовується або Ви бажаєте таким чимнов використовувати
|
||||
кілька додатків одразу - Ви можете встановити який саме порт використовувати.
|
||||
Тільки додайтие аргумент --port:
|
||||
|
||||
```bash
|
||||
php yii serve --port=8888
|
||||
```
|
||||
|
||||
Тепер ви можете використати свій браузер для доступу до встановленого Yii додатку
|
||||
за наступним посиланням:
|
||||
|
||||
```
|
||||
http://localhost:8080/
|
||||
```
|
||||
|
||||

|
||||
|
||||
Ви повинні побачити сторінку із привітанням "Congratulations!" у вашому браузері. Якщо ж ні, будь ласка, перевірте, чи задовольняють
|
||||
налаштування PHP вимоги Yii. Це можна зробити одним із наведених способів:
|
||||
|
||||
* Використайте браузер для доступу до URL `http://localhost/basic/requirements.php`
|
||||
* Або виконайте наступні команди в консолі:
|
||||
* Скопіюйте `/requirements.php` файл до `/web/requirements.php` та використайте браузер для доступу до URL `http://localhost/requirements.php`
|
||||
* Виконайте наступні команди в консолі:
|
||||
|
||||
```
|
||||
```bash
|
||||
cd basic
|
||||
php requirements.php
|
||||
```
|
||||
|
@ -26,6 +26,7 @@
|
||||
* Спільнота
|
||||
- Форум: <http://www.yiiframework.com/forum/>
|
||||
- Чат IRC: Канал #yii мережі freenode (<irc://irc.freenode.net/yii>)
|
||||
- Gitter chat: <https://gitter.im/yiisoft/yii2>
|
||||
- GitHub: <https://github.com/yiisoft/yii2>
|
||||
- Фейсбук: <https://www.facebook.com/groups/yiitalk/>
|
||||
- Твіттер: <https://twitter.com/yiiframework>
|
||||
|
@ -1,7 +1,7 @@
|
||||
Огляд
|
||||
=====
|
||||
|
||||
Додатки Yii організовані згідно шаблону проектування [Модель-Представлення-Контролер (MVC)](http://uk.wikipedia.org/wiki/Модель-вид-контролер).
|
||||
Додатки Yii організовані згідно архітектурного шаблону [Модель-Представлення-Контролер (MVC)](http://uk.wikipedia.org/wiki/Модель-вид-контролер).
|
||||
[Моделі](structure-models.md) являють собою дані, бізнес-логіку та бізнес-правила;
|
||||
[представлення](structure-views.md) відповідають за відображення даних моделей;
|
||||
[контролери](structure-controllers.md) приймають вхідні дані від користувача і перетворюють їх у команди для
|
||||
|
@ -694,7 +694,7 @@ class SiteController extends Controller
|
||||
відображення цього представлення за наступною URL-адресою:
|
||||
|
||||
```
|
||||
http://localhost/index.php?r=site/page&view=about
|
||||
http://localhost/index.php?r=site%2Fpage&view=about
|
||||
```
|
||||
|
||||
Параметр `view` із запиту `GET` вказує автономній дії [[yii\web\ViewAction]], яке представлення запитане. Потім дія здійснює пошук
|
||||
|
@ -126,6 +126,46 @@ yii <route> --appconfig=path/to/config.php ...
|
||||
Якщо значення за замовчуванням для опції є масивом і ви задаєте цю опцію під час виконання команди,
|
||||
то значення опції буде перетворене у масив розділенням вхідного текстового рядка за комами.
|
||||
|
||||
### Псевдоніми опцій
|
||||
|
||||
Починаючи із версії 2.0.8 консольна команда надає [[yii\console\Controller::optionAliases()]]
|
||||
метод для створення псевдонімів для опцій.
|
||||
|
||||
Щоб визначити псевдонім, потрібно перевизначити [[yii\console\Controller::optionAliases()]] метод
|
||||
у вашому контролері, наприклад:
|
||||
|
||||
```php
|
||||
namespace app\commands;
|
||||
|
||||
use yii\console\Controller;
|
||||
|
||||
class HelloController extends Controller
|
||||
{
|
||||
public $message;
|
||||
|
||||
public function options()
|
||||
{
|
||||
return ['message'];
|
||||
}
|
||||
|
||||
public function optionAliases()
|
||||
{
|
||||
return ['m' => 'message'];
|
||||
}
|
||||
|
||||
public function actionIndex()
|
||||
{
|
||||
echo $message . "\n";
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Тепер ви зможете використовувати наступний синтакс для запуску команди:
|
||||
|
||||
```
|
||||
./yii hello -m=hola
|
||||
```
|
||||
|
||||
### Аргументи
|
||||
|
||||
Окрім опцій, команда також може приймати аргументи. Аргументи будуть передані як параметри до методу дії
|
||||
@ -169,7 +209,7 @@ class ExampleController extends \yii\console\Controller
|
||||
public function actionIndex()
|
||||
{
|
||||
if (/* деяка проблема */) {
|
||||
echo "A problem occured!\n";
|
||||
echo "A problem occurred!\n";
|
||||
return 1;
|
||||
}
|
||||
// щось виконується
|
||||
|
@ -92,6 +92,22 @@ Yii::$classMap['Class2'] = 'path/to/Class2.php';
|
||||
Перша команда встановлює [composer asset plugin](https://github.com/francoispluchino/composer-asset-plugin/),
|
||||
який дозволяє керувати залежностями пакунків Bower і NPM через Composer. Навіть якщо ви захочете використовувати тільки
|
||||
прошарки бази даних або інші, не повʼязані ресурсами, можливості Yii, вам все-одно необхідно встановити даний пакунок composer.
|
||||
|
||||
Якщо ви бажаєте використовувати [можливість публікації ресурсів Yii](structure-assets.md),
|
||||
вам також слід додати наступну конфігурацію до розділу `extra` вашого файлу `composer.json`:
|
||||
|
||||
```json
|
||||
{
|
||||
...
|
||||
"extra": {
|
||||
"asset-installer-paths": {
|
||||
"npm-asset-library": "vendor/npm",
|
||||
"bower-asset-library": "vendor/bower"
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Дивіться також загальний [розділ про встановлення Yii](start-installation.md#installing-via-composer), для отримання додаткової
|
||||
інформації про Composer та проблеми, які можуть виникнути під час встановлення.
|
||||
|
||||
|
@ -132,7 +132,7 @@ the option value will be converted into an array by splitting the input string o
|
||||
### Options Aliases
|
||||
|
||||
Since version 2.0.8 console command provides [[yii\console\Controller::optionAliases()]] method to add
|
||||
aliases for commands.
|
||||
aliases for options.
|
||||
|
||||
To define an alias, override [[yii\console\Controller::optionAliases()]] in your controller, for example:
|
||||
|
||||
|
Reference in New Issue
Block a user