Оновлення з версії 1.0 до версії 1.1
=====================================

Зміни, повʼязані із сценаріями моделі
-------------------------------------

- Вилучений метод [safeAttributes()|CModel::safeAttributes]. Відтепер, щоб бути
валідованими, безпечні атрибути визначаються правилами, визначеними у
методі [rules()|CModel::rules] для конкретного сценарію.

- Змінені методи [validate()|CModel::validate],
[beforeValidate()|CModel::beforeValidate],
[afterValidate()|CModel::afterValidate].
[setAttributes()|CModel::setAttributes],
[getSafeAttributeNames()|CModel::getSafeAttributeNames] та
параметр 'scenario' видалені. Ви повинні отримувати та встановлювати сценарій моделі через
властивість [CModel::scenario].

- Змінений метод [getValidators()|CModel::getValidators] та видалений
[getValidatorsForAttribute()|CModel::getValidatorsForAttribute].
CModel::getValidators() відтепер повертає тільки валідатори, які застосовуються до сценарію, визначеному
властивістю сценарія моделі ([CModel::scenario]).

- Змінені методи [isAttributeRequired()|CModel::isAttributeRequired] та
[CModel::getValidatorsForAttribute()]. Параметр сценарія видалений. Замість нього
слід використовувати властивість сценарія моделі.

- Видалено властивість CHtml::scenario. CHtml відтепер використовує сценарій, зазначений у моделі.


Зміни, повʼязані із 'жадібним' завантаженням для відношень Active Record
----------------------------------------------------------------------

- За замовчуванням для всіх відношень, включених до 'жадібного' завантаження, буде
згенеровано і виконано один вираз з використанням JOIN. Якщо в основній таблиці
є опції запиту `LIMIT` або `OFFSET`, то спочатку буде виконаний цей
запит, а потім інший SQL-запит, який повертає всі звʼязані обʼєкти.
Раніше, у версії 1.0.x, за замовчуванням виконувались `N+1` SQL-запитів, якщо
'жадібне' завантаження включало `N` відношень `HAS_MANY` або `MANY_MANY`.


Зміни, повʼязані із псевдонімами таблиць у відношеннях Active Record
--------------------------------------------------------------------

- Тепер псевдонім за замовчуванням для звʼязанної таблиці такий самий, як і
відповідне імʼя відношення. Раніше, у версії 1.0.x, за замовчуванням Yii
автоматично генерував псевдонім таблиці для кожної звʼязанної таблиці,
и ми повинні були використовувати префікс `??.` для посилання на цей автоматично
згенерований псевдонім.

- Псевдонім для головної таблиці у AR запиті відтепер завжди рівен `t`.
У версії 1.0.x, він відповідав імені таблиці. Дана зміна ламає код
існуючих запитів AR у тому випадку, коли у якості псевдоніма було використано
імʼя таблиці. Рішення — замінити такі псевдоніми на 't.'.

Зміни, повʼязані із табличним (пакетним) введенням даних
--------------------------------------------------------

- Для імен полів використання запису виду `поле[$i]` більше невірне. Вони
повинні виглядати так — `[$i]поле`, щоб була можливість підтримки
множинного введення однотипних полів (наприклад, `[$i]поле[$index]`).

Інші зміни
----------

- Змінений конструктор [CActiveRecord]. Перший параметр (список атрибутів) прибраний.