適用沒有放到 https://asset-packagist.org 的以 composer 安裝的套件。
找到這個Yii短網址套件,
到套件的 composer.json 看,
套件名稱是 eseperio/yii2-url-shortener
$ composer require "eseperio/yii2-url-shortener:~1.0.0"
顯示找不到套件
Root composer.json requires eseperio/yii2-url-shortener, it could not be found in any version, there may be a typo in the package name.
所以找以本地目錄安裝的方法。
到套件庫下載程式
https://github.com/Eseperio/yii2-url-shortener/
放到和 yii2 的 composer.json 同一個目錄
或是在yii2的 composer.json 同目錄下
$git clone https://github.com/Eseperio/yii2-url-shortener.git
在 yii2 的 composer.json 最底部,修改成
"repositories": [
{
"type": "composer",
"url": "https://asset-packagist.org"
},
{
"type": "path",
"url": "./yii2-url-shortener",
"optioin": {
"symlink": false
}
}
]
這裡的資料就像是在 Linux 中指定的套件庫,
原本只有 https://asset-packagist.org,
新增的 "url": "./yii2-url-shortener", 就是本地套件位置。
之後照以 composer 安裝套件的方法,
$ composer require "eseperio/yii2-url-shortener:~1.0.0"
出現錯誤訊息:
Your requirements could not be resolved to an installable set of packages.
Problem 1
- Root composer.json requires eseperio/yii2-url-shortener ~1.0.0, found eseperio/yii2-url-shortener[dev-master] but it does not match the constraint.
改成
$ composer require "eseperio/yii2-url-shortener:dev-master"
順利安裝
使用前先確認config/db.php 中設定的 database 可正確連接,
把套件的 database 設定檔複製到網站的 migrations 資料夾內
如果是用basic架構,可能要先建立 migrations 資料夾
$mkdir migrations$cp vendor/eseperio/yii2-url-shortener/src/migrations/m190703_104610_add_shortener_table.php migrations/
如果是 advance 架構,
放到 console/migrations 資料夾。
$cp vendor/eseperio/yii2-url-shortener/src/migrations/m190703_104610_add_shortener_table.php console/migrations/
自動建立套件需要的資料庫表格:
$./yii migrate/to 190703_104610
Yii Migration Tool (based on Yii v2.0.51)
Total 1 new migration to be applied:
m190703_104610_add_shortener_table
Apply the above migration? (yes|no) [no]:yes
*** applying m190703_104610_add_shortener_table
> create table {{%yii2_shortener}} ... done (time: 0.022s)
> create unique index shortenedUrl on {{%yii2_shortener}} (shortened) ... done (time: 0.038s)
*** applied m190703_104610_add_shortener_table (time: 0.069s)
1 migration was applied.
Migrated up successfully.
參考資料:
Composer: Using your own local package
https://darkghosthunter.medium.com/composer-using-your-own-local-package-2b252670d429
沒有留言:
張貼留言