首頁  >  文章  >  php框架  >  最新的Laravel 9.37發布了,帶來這些新變化!

最新的Laravel 9.37發布了,帶來這些新變化!

藏色散人
藏色散人轉載
2022-11-04 17:02:481532瀏覽

Laravel團隊在這週發布了 9.37 版本並且同時在 9.37 與  Laravel 9.36 之間發布了一些補丁。本週得發布添加了對使用 Vite 預加載資源的支持,新的嚴格違規處理程序,CLI輸出詳細的視圖緩存,以及更多。

Verbose 視圖快取

Andrew Brown 貢獻了在 view:cache 指令中傳遞-v 的功能,以輸出命令正在尋找的目錄,以及透過-vv 來查看命令快取中的每個檔案。 【相關推薦:laravel影片教學

php artisan view:cache -vv

這是一個例子,你會看到新安裝的Laravel 9.37 的情況:

最新的Laravel 9.37發布了,帶來這些新變化!

#處理靜默丟棄與屬性遺失的方法

Aaron Francis 提供了為「靜默丟棄」和「缺少屬性」嚴格模式衝突註冊處理程序的功能:

Model::handleMissingAttributeViolationUsing(
    function ($model, $key) {
        // ...
    });Model::handleDiscardedAttributeViolationUsing(
    function ($model, $keys) {
        // ...
    });

傳遞救援報告參數的閉包

@foremtehan 貢獻了在使用rescue() 時將可呼叫物件作為$report 參數傳遞,以便你可以根據傳回的布林值有條件地報告錯誤:

rescue(fn() => 'error', fn() => 'rescue', function(Throwable $e){
    return $e instanceof SomeException;});

支援使用Vite 預載入資源

Tim MacDonald 使用Vite 預先載入目前頁面所需的資源。現在它是使用 Vite 的 Laravel 應用程式的預設行為。它如何運作的細節非常複雜,我建議閱讀Pull Request #44096. 此外,你還可以了解有關背後的一般概念的更多信息預加載關鍵資源以提高加載速度.

##查詢建構器RawValue方法

@eusonlito 貢獻了

rawValue() 方法,支援使用SQL表達式來取得值。以下是一些使用範例:

$first = TripModel::orderBy('date_at', 'ASC')
    ->rawValue('YEAR(`date_at`)');$last = TripModel::orderBy('date_at', 'DESC')
    ->rawValue('YEAR(`date_at`)');$fullname = UserModel::where('id', $id)
    ->rawValue('CONCAT(`first_name`, " ", `last_name`)');

#發行說明

#您可以在下方查看新功能和更新的完整列表,以及9.36.0和9.37.0之間的差異。以下發行說明來自changelog:

v9.37.0

新增

    新增檢視快取時的可選詳細輸出(#44673)
  • 允許傳遞閉包以挽救$report 參數(#44710)
  • 支援使用Vite 預先載入資源(#44096)
  • 新增
  • Illuminate/Mail/Mailables/Content::htmlString() (#44703)

修復

  • 修復model:show 註冊getAttribute() 作為空訪問器(#44683)
  • #修復PendingCommand 中輸出斷言的預期(#44723)
  • #v9.36.4

新增
  • 為資料庫查詢產生器新增了原始值(並作為包裝器雄辯) (#44631)

新增TransactionCommitting (#44608)新增dontIncludeSource 到CliDumper 與HtmlDumper (#44623)

    新增
  • Illuminate/Filesystem/FilesystemAdapter::checksum(
  • #Illuminate/Filesystem/FilesystemAdapter::checksum()
  • (#44660)

加入用於靜默丟棄和缺少屬性衝突的處理程序(#44664)

#恢復######################################################################################################### ##恢復「允許在沒有id 的模型上使用MustVerifyEmail 作為主key」 (#44672)##############更改########複製請求時創建新的Json 參數套件實例(#44671)######防止在執行env:decrypt 時啟動提供者(#44654)##################v9. 36.3######

恢復

  • 還原view 事件的微優化(#44653)

已修正

  • 修正了側邊欄選項卡,清除檢視快取view:clear (#44643)
  • 修正Illuminate/Database/Eloquent/Model::offsetExists() (#44642)
  • 忽略元件的快取和測試之間的工廠(#44648)

#更改

    ##Bump Testbench 依賴關係(# 44651)

v9.36.2

    確保在*存在時呼叫視圖建立者與合成器(#44636)

#v9.36.1

#修正

    修復使用createBladeViewFromString 的livewire 元件(#pull)
原文網址:https://laravel-news.com/laravel-9-37 -0

翻譯網址:https://learnku.com/laravel/t/72839

以上是最新的Laravel 9.37發布了,帶來這些新變化!的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:learnku.com。如有侵權,請聯絡admin@php.cn刪除