亚洲视频二区_亚洲欧洲日本天天堂在线观看_日韩一区二区在线观看_中文字幕不卡一区

公告:魔扣目錄網(wǎng)為廣大站長提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.430618.com 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

下面給大家介紹Laravel 數(shù)據(jù)庫遷移功能的一個坑,希望對需要的朋友有所幫助!


環(huán)境:Laravel 8

需求用到 Laravel 數(shù)據(jù)庫遷移功能,因本人是強(qiáng)迫癥處女座所以喜歡自己命名文件例如:


60c43fbc40b29.png


但是在執(zhí)行遷移的時候報錯:


60c43ff196df0.png


經(jīng)過幾輪嘗試發(fā)現(xiàn) Laravel 對遷移文件的 文件名命名格式 是有固定的解析的,所以當(dāng)我文件名完全按照它的風(fēng)格去寫的時候就正常運(yùn)行了


60c44025c9e09.png


當(dāng)然類名也必須統(tǒng)一:


60c4411702bdf.png


吐槽的點(diǎn)在于:文檔中并沒有提及文件名稱命名風(fēng)格的強(qiáng)制要求 故今天記錄下此小坑

貌似是另一個坑或者說是框架的不足:那就是表結(jié)構(gòu) 沒辦法持續(xù)集成,例如今天我需要對某個表加字段,但此時已經(jīng)遷移過了,那就會 沒辦法再次運(yùn)行同一個遷移文件必須要創(chuàng)建新的遷移文件,當(dāng)然這我也理解這是為了方便回滾,但是我的需求就是為了新功能而持續(xù)加字段,并不需要回滾,所以我的 解決方案 就是每次都清空 migrations 這張表,因?yàn)檫@張表就是控制能否反復(fù)運(yùn)行同一個遷移文件的地方,代碼如下:

trait Trait_Migrate
{
    /**
     * @desc 數(shù)據(jù)表:初始化
     * @return Void
     */
    static public function CI_Table_Structure() : Void
    {
        # 清空記錄表以保證能持續(xù)遷移
        DB::table( 'migrations' ) -> truncate();
        # 執(zhí)行遷移
        Artisan::call( 'migrate --force --path=/database/migrations/' . SELF::$CI_File );
    }
 
}

總的來說完全按照框架文檔的規(guī)則來就會一帆風(fēng)順,可是做項(xiàng)目遇到框架默認(rèn)功能無法滿足需求的情況是非常正常的


分享到:
標(biāo)簽:Laravel 數(shù)據(jù)庫遷移功能
用戶無頭像

網(wǎng)友整理

注冊時間:

網(wǎng)站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學(xué)四六

運(yùn)動步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績評定2018-06-03

通用課目體育訓(xùn)練成績評定