1.13. 资源 - Security

未匹配的标注

面板构建器 - 资源 - 安全

保护模型属性

Filament 会暴露所有模型属性给 Javascript,除非在模型中使用 $hidden 对其隐藏。这是 Livewire 的模型绑定行为。我们保留了这一功能,使得在保留所需数据的同时,可以方便在表单初始化载入后动态增加或删除表单字段。

由于属性在 Javascript 中可见,只有表单中的字段是用户可编辑的。因此对批量赋值而言,这不是个问题。

要在编辑和查看页面中,从 Javascript 中移除特定属性,你可以重写mutateFormDataBeforeFill() 方法:

protected function mutateFormDataBeforeFill(array $data): array
{
    unset($data['is_admin']);
    return $data;
}

上例中,我们从 Javascript 中删除了 is_admin 属性,因为表单中没有使用到这一字段。

本文章首发在 LearnKu.com 网站上。

本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

原文地址:https://learnku.com/docs/laravel-filamen...

译文地址:https://learnku.com/docs/laravel-filamen...

上一篇 下一篇
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
贡献者:2
讨论数量: 0
发起讨论 只看当前版本


暂无话题~