本篇文章给大家带来了关于Laravel9.47的最新消息,其中主要介绍了Laravel 团队近期发布的9.47版本都有哪些新功能,感兴趣的朋友一起来看一下吧,希望对大家有帮助。
Laravel 团队近期发布了 9.47,其中包含新的 Eloquent 集合可见性方法、「可销毁的」单例路由、支持带有 batch fake 的懒加载集合等等:
新的 Eloquent 集合可见性方法
Jess Archer 为 Eloquent 集合贡献了 setVisible
和 setHidden
方法。 当你想明确要返回的数据时,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:
BatchFake::add()
中添加了支持懒加载集合 (#45507)Illuminate/Routing/PendingSingletonResourceRegistration::destroyable()
可销毁路由 (#45549)explodeExplicitRule
与正则表达式规则 (#45555)Illuminate/Database/Query/Builder::whereIntegerInRaw()
方法 (#45584)Illuminate/Database/Console/Migrations/MigrateMakeCommand.php
(9f6ff48)推荐学习:《laravel视频教程》
原文地址:https://www.php.cn/link/67163b84d38995c8661d9f8a5b1f8d46
译文地址:https://www.php.cn/link/10af1041993950de8d8775280b66277a
以上是Laravel 9.47 发布啦!更新速览~的详细内容。更多信息请关注PHP中文网其他相关文章!