Laravel 11.1版本发布-数据库查询中的非后备枚举、withSchedule()引导方法
Laravel  /  管理员 发布于 11个月前   349
本周,Laravel 团队发布了 v11.1,其中包括withSchedule引导方法、查询生成器中的非后退枚举、
SES 列表管理选项等。
Laravel 11.1 是本月早些时候发布的Laravel 11 GA 之后的第一个小版本。
在应用程序引导符中添加 withSchedule
Nuno Maduro在bootstrap/app.php文件中加入了withSchedule方法:
->withSchedule(function ($schedule) {
$schedule->command('backup:database')->daily();
})
为 SES 邮件传输系统添加列表管理选项
Ariful Alam提供了在使用 SES 邮件传输时使用 SES订阅管理功能的功能。
https://docs.aws.amazon.com/ses/latest/dg/sending-email-subscription-management.html
您可以在邮件信息的headers()方法中定义以下标题:
/**
* Get the message headers.
*/
public function headers(): Headers
{
return new Headers(
text: [
'X-Ses-List-Management-Options' => 'contactListName=MyContactList;topicName=MyTopic',
],
);
}
此 SES 标头可在您指定的联系人列表和主题中自动启用每封外发邮件的退订链接。
如果用户取消订阅,SES 将不允许发送电子邮件。
详情请参见 Laravel 的SES 驱动程序文档。
https://laravel.com/docs/11.x/mail#ses-driver
在数据库查询中接受非支持枚举
Giorgio Balduzzi提供了在数据库查询中使用非支持枚举的功能。
Eloquent 属性转换已经可以实现。
但是,在查询生成器中使用非支持枚举是不可能的。
现在,从 Laravel 11.1 开始,你可以将这些枚举传递给查询了:
enum Status
{
case Active;
case Archive;
}
class User extends Model
{
protected $casts = [
'status' => Status::class,
];
}
User::where('status', Status::Active)->get();
User::update([ 'status' => Status::Archive]);
查询会自动将每个非支持枚举的情况转换为名称值。
为上下文添加了#Conditionable特性
Michael Nabil为 Laravel 的新Context Facade 添加了Conditionable特性。
https://www.zongscan.com/demo333/96776.html
这允许有条件地设置上下文,并根据可条件方法定义假或真的默认值:
Context::when(
auth()->user()->isAdmin(),
fn ($context) => $context->add('user', ['key' => 'other data', ...auth()->user()]),
fn ($context) => $context->add('user', auth()->user()),
);
发布说明
您可以在 GitHub 上查看以下新功能和更新的完整列表,以及11.0.0 和 11.1.0 之间的差异。
以下版本说明直接来自更新日志:
https://github.com/laravel/framework/compare/v11.0.0...v11.1.0
https://github.com/laravel/framework/blob/efa867e85b4abcaab8146f66bc676b7239507719/CHANGELOG.md#v1110---2024-03-26
v11.1.0
[11.x] MySQL 事务隔离级别修复,
作者@mwikberg-virta发布于https://github.com/laravel/framework/pull/50689
[11.x] 在 SES 邮件传输中添加 ListManagementOptions(列表管理选项),
作者:@arifszn,发布于https://github.com/laravel/framework/pull/50660
[11.x] 在数据库查询中接受非支持枚举
(由@gbalduzzi在https://github.com/laravel/framework/pull/50674中提供
[11.x] 通过@michaelnabil230在https://github.com/laravel/framework/pull/50707中
为上下文添加可条件特质
[11.x] 在 Context 的文档块中添加[@throws](https://github.com/throws)部分
by@rnambaaleinhttps://github.com/laravel/framework/pull/50715
[11.x] 测试修改可空列
by@hafezdivandariinhttps://github.com/laravel/framework/pull/50708
[11.x] 引入 HASH_VERIFY 环境变量
by@valorininhttps://github.com/laravel/framework/pull/50718
[11.x] 转换 unix 时间戳时应用默认时区
by@daniserinhttps://github.com/laravel/framework/pull/50751
[11.x] 修正ApplicationBuilder::withCommandRouting()的用法
by@crynoboneinhttps://github.com/laravel/framework/pull/50742
[11.x] 在应用程序启动后注册控制台命令、路径和路由
(由@plumthedev在https://github.com/laravel/framework/pull/50738提供
[11.x] 增强对畸形请求的处理
@jnoordsij发布于https://github.com/laravel/framework/pull/50735
[11.x] 在bootstrap/app.php文件中添加
withScheduleby@nunomaduroinhttps://github.com/laravel/framework/pull/50755
[11.x] 修复InvalidArgumentException.php中 create 方法的 dock 块
by@saMahmoudzadehinhttps://github.com/laravel/framework/pull/50762
[11.x]@abrahamgreyson在
https://github.com/laravel/framework/pull/50766中提出的签名错字问题
[11.x] 简化ApplicationBuilder::withSchedule()
by@crynoboneinhttps://github.com/laravel/framework/pull/50765
转:
https://laravel-news.com/laravel-11-1-0
123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..路人 在
php中使用hyperf框架调用讯飞星火大模型实现国内版chatgpt功能示例中评论 教程很详细,如果加个前端chatgpt对话页面就完美了..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号