把一系列相關聯的功能使用模塊開發,好處多多,維護起來很方便,模塊還能夠單獨發佈出去,讓下一個項目之間使用,真是方便。php
下面我就寫一個開發擴展的簡單教程。git
gii 自帶幫助咱們生成一個基本的擴展文件結構,地址以下: www.xxx.com/gii/extensiongithub
先預覽一下,成功以後能夠點擊生成按鈕。json
而後頁面會提示你如何操做。他讓咱們上傳到 GitHub 上去,再開發、使用。可是通常咱們一個擴展剛生成,還沒寫功能,上傳到 GitHub 再開發,太麻煩了。yii2
下面我來談談我是怎麼使用的。composer
先在配置文件添加一個別名,代碼以下:yii
<?php return [ 'components' => [ ], 'aliases' => [ 'yiier/rbac' => '@backend/runtime/tmp-extensions/yii2-rbac/src', ], ];
只要添加這行就能夠使用擴展的命名空間了,就能夠愉快的開發了。spa
一樣的道理,若是咱們再 GitHub 上看到一個擴展不能用 composer 下載下來怎麼辦?其實咱們能夠本身定義一個 vendor 目錄,而後給擴展配置一個路徑別名就是能夠用的。code
按照習慣,咱們的擴展通常寫在 src
目錄下,因此你要手動新建一個 src
文件夾,而後再用 Gii 去生成模塊到 src
文件夾裏,而且還要改擴展根目錄下的 composer.json 文件。component
"autoload": { "psr-4": { // "yiier\\rbac\\": "" // 原來的 "yiier\\rbac\\": "src" } }
下面分享一些優秀的開源模塊 https://github.com/forecho/awesome-yii2#module-模塊