You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Filament3+Laravel10添加数据后通知重复显示的解决办法

解决Filament 3 中CreateAction重复通知问题

问题场景

使用Filament 3搭配Laravel 10开发时,给表格的CreateAction添加after()方法自定义通知后,页面会弹出两条通知:一条是Filament默认的成功通知,另一条是自定义通知。尝试调用->disableNotifications()关闭默认通知,但未生效。

解决方案

方案一:正确配置disableNotifications()

确保->disableNotifications()直接链式绑定到CreateAction实例上,覆盖默认通知逻辑,同时保留自定义的after()通知:

->headerActions([
    Tables\Actions\CreateAction::make()
        ->model(Movie::class)
        ->modal()
        ->form(MovieSchema::schema())
        ->disableNotifications() // 关键:直接作用于CreateAction
        ->after(function () {
            Notification::make()
                ->title("Tambah Berhasil")
                ->success()
                ->send();
        })
])

方案二:覆盖默认Action逻辑

直接定义action()闭包,手动处理数据创建和自定义通知,跳过Filament默认的action执行流程(包括默认通知):

->headerActions([
    Tables\Actions\CreateAction::make()
        ->model(Movie::class)
        ->modal()
        ->form(MovieSchema::schema())
        ->action(function (array $data) {
            // 手动创建数据
            Movie::create($data);
            // 发送自定义通知
            Notification::make()
                ->title("Tambah Berhasil")
                ->success()
                ->send();
        })
])

说明

之前disableNotifications()未生效,大概率是因为调用位置错误,没有直接绑定到CreateAction实例上。Filament的Action类中,disableNotifications()方法专门用于关闭组件自带的默认通知,必须链式调用在目标Action上才能生效。

内容的提问来源于stack exchange,提问作者fajriyan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 17:05:57