Yii PHPフレームワークのバージョン2.0.9がリリースされました。 マイナーリリースには、約60のマイナーな改善と修正が含まれています。 インストール手順は、公式Webサイトで見つけることができます。
このバージョンには2つの変更がありますが、これはアプリケーションに影響を与える可能性は低いです。 UPGRADE.mdをチェックしてください 。
Yiiコミュニティのプルリクエストとディスカッションに感謝します。
このリリースはあなたのおかげで出てきました!
フレームワークの開発はGitHubで確認できます。 ツイッターもあります
とFacebook 。
次に、最も興味深い改善点をさらに詳しく検討します。 変更と修正の完全なリストはCHANGELOGにあります。
アクションフィルター
\yii\base\ActionFilter
は、マスクをサポートするようになりました。
フィルターはモジュールまたはアプリケーション全体で停止しています。
return [ 'as filter' => [ 'class' => 'app\filters\SomeFilter', 'only' => [ 'particular/*', // 'particular' '*/captcha', // 'captcha' ], ], // ... ];
パフォーマンスの強化
- データベース使用時のメッセージ翻訳のパフォーマンスが向上しました。 必要なインデックスを追加しました。
- Oracleスキーマの読み取りが高速になりました。
スキーマおよび移行ビルダー
移行で使用されるスキーマビルダーが改善されました。 明示的にnull
を書き込む機能を示す新しいnull()
メソッドが追加されました。 デフォルト値がnull
場合、メソッドは自動的に適用されnull
。
$type = $this->string(42)->null();
SQLのメソッドも追加しました。
$type = $this->string(15)->notNull()->append('collate ascii_bin')->append('character set ascii');
移行を生成するためのコマンドの構文が若干変更されました: _table
と_column
必要になりました:
./yii migrate/create create_user_table ./yii migrate/create add_name_column_to_user_table
データプロバイダーとウィジェット
このリリースでのすべての改善は、見出しに関連しています。 \yii\data\ArrayDataProvider
に、 $modelClass
プロパティが追加されました。これにより、モデルを指定してフィールドヘッダーを取得できます。 さらに、データを含むすべての列の動作を定義する\yii\grid\DataColumn
は、 filterModel
グリッドからヘッダーを取得しようとしています。
リファクタリング
ManagerInterface
RBACインターフェイスから、 CheckAccessInterface
割り当てられました。これは、アクセスチェックの実装に役立ちます。
\yii\web\User::loginByCookie()
、拡張性を高めるためにリファクタリングされています。
資産
アセットパッケージ内のファイルを一覧表示するときに、パスをnull
設定できるようになりました。 この場合、ファイルは登録されません。 これは、たとえば、作業環境用の追加ファイルを登録する場合に便利です。
namespace common\assets; use yii\web\AssetBundle; class ReactAsset extends AssetBundle { public $sourcePath = null; public $js = [ YII_ENV_DEV ? "//fb.me/react-15.0.1.js" : "//fb.me/react-15.0.1.min.js", YII_ENV_DEV ? "//fb.me/react-dom-15.0.1.js" : "//fb.me/react-dom-15.0.1.min.js", YII_ENV_DEV ? "//cdnjs.cloudflare.com/ajax/libs/babel-core/5.6.15/browser.js" : null, ]; }
ロギング
\yii\log\Target::$logVars
をより細かく設定できるようになりました:
-
_SESSION
グローバルセッション変数を書き込みます。 すべてが元通りです。 -
_SESSION.id
セッションからのid
のみを書き込みます。 -
!_SESSION.secret
セッションからsecret
鍵を書き込まないでください。
このようなフィルタリングのロジックは、 \yii\helpers\ArrayHelper::filter()
レンダリングされます。 必要に応じて、自宅で使用できます。
マークダウン
yii\helpers\Markdown
のデフォルトの構文タイプは、 $defaultFlavor
を介して設定できるようになり$defaultFlavor
。