Filament 详情页隐藏 RelationManager 表单提交按钮

AI摘要
【知识分享】用户询问Filament框架中RelationManager在详情页隐藏编辑和删除操作的原因及解决方法。分析指出,当页面为ViewRecord子类且isReadOnly()返回true时,actions会因authorize()返回false而被隐藏。解决方案是在表格配置中通过header方法传递isReadOnly参数,以控制操作按钮的显示状态。

AI 提问

app/Filament/Resources/Health/ChannelSpeakerConfigResource/RelationManagers/ThemeConfigRelationManager.php

给我分析一下,RelationManager 在详情 view 访问时

Tables\Actions\EditAction::make(), Tables\Actions\DeleteAction::make()

修改,删除 被隐藏了。是用了什么方法。

回答结果

隐藏原因

当满足以下条件时,actions 会被隐藏:

  1. 当前页面是 ViewRecord 的子类(详情页)

  2. isReadOnly() 返回 true,导致 authorize() 返回 false,actions 被隐藏

解决问题

return $table ->header(view('filament.relation-managers.ai-config-header', [ 'initialAiVoice' => $this->aiVoice, 'initialWakeWord' => $this->wakeWord, 'initialIdentityName' => $this->identityName, 'initialWelcomePhrase' => $this->welcomePhrase, 'aiVoiceProperty' => 'aiVoice', 'wakeWordProperty' => 'wakeWord', 'identityNameProperty' => 'identityName', 'welcomePhraseProperty' => 'welcomePhrase', 'saveMethod' => 'saveAiConfig', 'isReadOnly' => $this->isReadOnly(), // 是否只读 ]))
本作品采用《CC 协议》,转载必须注明作者和本文链接
Dcat-Admin (plus版)是汇聚Filament,Laravel-admin , Dcat-admin 优点于一身的基于Laravel + Bootstrap 的极速开发框架
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

Dcat-plus Admin @ 速码邦
文章
47
粉丝
64
喜欢
241
收藏
200
排名:323
访问:2.9 万
私信
所有博文
社区赞助商