Pasukan Laravel mengeluarkan versi 9.37 minggu ini dan turut mengeluarkan beberapa patch antara 9.37 dan Laravel 9.36. Keluaran minggu ini menambah sokongan untuk pramuat sumber dengan Vite, pengendali pelanggaran ketat baharu, caching paparan verbose keluaran CLI dan banyak lagi.
Verbose View Caching
Andrew Brown menyumbangkan keupayaan untuk lulus view:cache
dalam perintah -v
untuk mengeluarkan apa yang arahan itu cari untuk direktori, dan lihat setiap fail dalam cache arahan melalui -vv
. [Cadangan berkaitan: tutorial video laravel]
php artisan view:cache -vv
Ini adalah contoh, anda akan melihat situasi Laravel 9.37 yang baru dipasang:
Kaedah untuk mengendalikan buang senyap dan kehilangan atribut
Aaron Francis menyediakan pengendalian pendaftaran untuk konflik mod ketat "buang senyap" dan "atribut hilang" Apa program ini melakukan:
Model::handleMissingAttributeViolationUsing( function ($model, $key) { // ... });Model::handleDiscardedAttributeViolationUsing( function ($model, $keys) { // ... });
Penutupan yang melepasi parameter laporan penyelamatan
@foremtehan menyumbang untuk menjadikannya mungkin apabila menggunakan rescue()
Objek panggilan diluluskan sebagai parameter $report
supaya anda boleh melaporkan ralat secara bersyarat berdasarkan boolean yang dikembalikan:
rescue(fn() => 'error', fn() => 'rescue', function(Throwable $e){ return $e instanceof SomeException;});
Sokongan menggunakan Vite untuk pramuat sumber
Tim MacDonald menggunakan Vite untuk pramuat sumber yang diperlukan untuk halaman semasa. Ia kini menjadi tingkah laku lalai untuk aplikasi Laravel menggunakan Vite. Butiran tentang cara ia berfungsi agak rumit dan saya mengesyorkan membaca Permintaan Tarik #44096 Selain itu, anda boleh mengetahui lebih lanjut tentang konsep umum di sebalik pramuat sumber utama untuk meningkatkan kelajuan pemuatan
Kaedah RawValue pembina pertanyaan
@eusonlito menyumbang kaedah rawValue()
, yang menyokong penggunaan ungkapan SQL untuk mendapatkan nilai. Berikut ialah beberapa contoh penggunaan:
$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`)');
Nota Keluaran
Anda boleh menyemak senarai penuh ciri dan kemas kini baharu untuk 9.36 di bawah Perbezaan antara .0 dan 9.37.0. Nota keluaran berikut adalah daripada log perubahan:
v9.37.0
Illuminate/Mail/Mailables/Content::htmlString()
(#44703)v9.36.4
Illuminate/Filesystem/FilesystemAdapter::checksum()
(#44660)v9.36.3
Illuminate/Database/Eloquent/Model::offsetExists()
(#44642)v9 .36.2
v9.36.1
Alamat asal: https://laravel-news.com/laravel-9-37-0Alamat terjemahan: https:// learnku.com/laravel/t/ 72839
Atas ialah kandungan terperinci Laravel 9.37 terbaru telah dikeluarkan, membawa perubahan baharu ini!. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!