Heim  >  Artikel  >  PHP-Framework  >  Laravel 9.47 ist veröffentlicht! Update auf einen Blick~

Laravel 9.47 ist veröffentlicht! Update auf einen Blick~

藏色散人
藏色散人nach vorne
2023-01-28 16:40:341663Durchsuche

Dieser Artikel bringt Ihnen die neuesten Nachrichten zu Laravel 9.47. Er stellt hauptsächlich die neuen Funktionen der kürzlich vom Laravel-Team veröffentlichten Version vor. Ich hoffe, dass er für alle hilfreich ist.

Laravel 9.47 ist veröffentlicht! Update auf einen Blick~

Das Laravel-Team hat kürzlich 9.47 veröffentlicht, das neue Sichtbarkeitsmethoden für Eloquent-Sammlungen, „zerstörbares“ Singleton-Routing, Unterstützung für verzögertes Laden von Sammlungen mit Batch-Fake und mehr enthält:

Neue Sichtbarkeitsmethoden für Eloquent-Sammlungen

Jess Archer hat die Methoden setVisible und setHidden zu Eloquent-Sammlungen beigetragen. Die setVisible-Methode ist nützlich, wenn Sie explizit angeben möchten, welche Daten Sie zurückgeben möchten, und sie wird beim Hinzufügen neuer Eigenschaften zum Modell nicht verloren gehen: setVisiblesetHidden 方法。 当你想明确要返回的数据时,setVisible 方法很有用,并且它不会在向模型添加新属性时泄漏:

$users->setVisible(['id', 'name'])->toArray();
/*
[
    [
        'id' => 1,
        'name' => 'Test User',
    ]
]
*/

如果你只有几个要显式隐藏的字段,但通常希望默认值可见,则相反的 setHidden 很有用。

在 BatchFake 中支持懒加载集合

Evan Burrell 在将 withFakeBatch() 与作业一起使用时贡献了对 LazyCollection 的支持。 由于此功能,现在可以使用以下功能:

use Batchable;

Model::cursor()
    ->map(fn (Model $model) => new ModelJob($model))
    ->chunk(1000)
    ->each(function (LazyCollection $jobs) {
        $this->batch->add($jobs);
    });

// 相关测试
[$job] = (new ModelJobBatch())->withFakeBatch();

$job->handle();

 了解更多关于模拟批处理的信息,请点击测试模拟器.

"可销毁的"单例路由

Choraimy Kroonstuiver 贡献了一个简单的方法,将单例路由标记为"可销毁"。这种类型的路由可以被删除,但默认不会被创建。

// 以前
Route::singleton(...)->creatable()->except('create', 'store');

// 之后
Route::singleton(...)->destroyable();

发布说明

你可以在GitHub上看到以下完整的新功能和更新列表以及 9.46.0和9.47.0 之间的差异。下面的发行说明直接来自 changelog

v9.47.0

新增

  • BatchFake::add() 中添加了支持懒加载集合 (#45507)
  • 添加小数到数字规则列表(#45533)
  • 添加 Illuminate/Routing/PendingSingletonResourceRegistration::destroyable() 可销毁路由 (#45549)
  • 将 setVisible 和 setHidden 添加到 Eloquent 集合 (#45558)

修复

  • 修复绑定方法上下文绑定 (#45500)
  • 修复方法 explodeExplicitRule 与正则表达式规则 (#45555)
  • 修复 Illuminate/Database/Query/Builder::whereIntegerInRaw() 方法 (#45584)
  • 修复模板标签(#45490)

修改

fügt withFakeBatch( ) Trägt zur Unterstützung von LazyCollection bei, wenn es mit Jobs verwendet wird. Dank dieser Funktion stehen nun folgende Funktionen zur Verfügung:
rrreee Um mehr über die Simulation der Stapelverarbeitung zu erfahren, klicken Sie bitte auf Simulator testen.

"Zerstörbares" Singleton-Routing

Choraimy Kroonstuiver

hat eine einfache Methode beigesteuert, die die Singleton-Route markiert als „zerstörbar“. Routen dieses Typs können gelöscht werden, werden jedoch nicht standardmäßig erstellt. 🎜rrreee

Versionshinweise

🎜Die vollständige Liste der neuen Funktionen und Updates finden Sie unten auf GitHub und Differenz zwischen 9.46.0 und 9.47.0🎜. Die folgenden Versionshinweise stammen direkt aus dem Changelog🎜: 🎜

v9.47.0

Neu

Das obige ist der detaillierte Inhalt vonLaravel 9.47 ist veröffentlicht! Update auf einen Blick~. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:learnku.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen