RSS DEV 社区
关注
如何将 Filament 数据库通知发送到特定的队列
Filament 的 `sendToDatabase()` 提供了方便的数据库通知。然而,直接为这些通知指定队列并不是一个内置选项。 Filament 数据库通知由 Laravel 的通知系统处理。具体来说,`toDatabase()` 创建一个 `DatabaseNotification` 对象,该对象实现了 `ShouldQueue`。这意味着它使用您在 Laravel 应用程序中配置的默认队列连接。要控制数据库通知被发送到哪个特定队列,您需要使用 `toDatabase()` 方法而不是 `sendToDatabase()`。在调用 `toDatabase()` 之后,您可以链式调用 `onQueue()` 方法来指定您想要的队列名称。这种方法允许您利用 Laravel 的队列系统进行更精细的控制,同时仍然在 Filament 的通知框架内。在将通知发送给同一队列上的多个用户时,也可以重用通知实例。对于更简单的需求,`sendToDatabase()` 就足够了。对于队列管理,切换到 `toDatabase()->onQueue('your_queue_name')` 提供了必要的灵活性。作者正在考虑提交一个拉取请求,以向 `sendToDatabase()` 添加直接的队列支持。