{{tag>yii Yii2}}

====== Yii2 Обновление с альфы и беты до релиза ======

===== Настройки =====

  * В компоненте request добавлен новый обязательный параметр cookieValidationKey
	
  <code php>
  'request' => [
    'class' => 'yii\web\Request',
    'enableCsrfValidation' => false,
    'cookieValidationKey' => 'BKJkhkujk7b66vvnvbBV32NBVV55cvgdFEDXCG',
  ],
  </code>

===== Код =====


  * Во вьюхи заменить <code php>
Html::url() меняем на Url::to()
</code>
  * Во вьюхи или контролере заменить <code php>
$this->createUrl() 
//(где $this - это контролер) заменяем на 
Url::toRoute
</code>
  * Yii::createObject() заменить на <code php>
\Yii::$container->set('yii\widgets\LinkPager', [
    'maxButtonCount' => 5,
]);
</code>
  * В альфе отсутствует security и токен
  * Теперь Security получил доступ, в качестве компанента<code php>
Security::encrypt() меняем на Yii::$app->getSecurity()
</code>
  * yii\behaviors\AutoTimestamp меняем на yii\behaviors\TimestampBehavior <code php>
//Пример:
  public function behaviors() {
  return [
  'timestamp' => [
  'class' => yii\behaviors\TimestampBehavior::className(),
  'createdAtAttribute' => 'create_time',
  'updatedAtAttribute' => 'update_time',
  'value' => new yii\db\Expression('NOW()'),
  ],

  ];
}
</code>
  * Функционал Security перенесен в компанент <code php>
Security::generateRandomKey(); заменить на Yii::$app->getSecurity()->generateRandomKey();
</code>
  * <code php>
Yii::$app->getComponent() меняем на Yii::$app->get()
</code>
  * Перемещаем namespace<code php>
yii\web\VerbFilter; меняем на yii\filters\VerbFilter;
</code>
  * В модели меняем <code php>
model::find($id) на model::findOne($id)
</code>
  * В контролере заменить <code php>
yii\web\AccessControl на yii\filters\AccessControl
</code>
  * Создание модели ADV::create($row) заменить на <code php>
$banner  = ADV::instantiate($config = []);
ADV::populateRecord($banner, $row);
</code>
  * Заменяем Request::getPostParam() на Request::getBodyParam()
