如何通过Laravel中的toArray/toDatabase函数指定通知属性?
Laravel允许使用如何通过Laravel中的toArray/toDatabase函数指定通知属性?,laravel,laravel-5,notifications,eloquent,laravel-5.3,Laravel,Laravel 5,Notifications,Eloquent,Laravel 5.3,Laravel允许使用toArray或toDatabase将数据保存在notifications表格中。但是这本书没有澄清两件事 在notifications表中存储数据时,toArray()和toDatabase()之间有什么区别 我已经在通知表中添加了一个附加属性(链接),但当我这样做时: public function toDatabase() { return [ 'data'=>'My Data', 'link'=>'My Link'
toArray
或toDatabase
将数据保存在notifications
表格中。但是这本书没有澄清两件事
notifications
表中存储数据时,toArray()
和toDatabase()
之间有什么区别通知
表中添加了一个附加属性(链接
),但当我这样做时:
public function toDatabase() {
return [
'data'=>'My Data',
'link'=>'My Link'
];
}
data
属性下序列化了数组。使用toArray()
或toDatabase()
函数保存属性的正确方法是什么?1)使用的方法由via()返回数组决定:
return ['mail', 'database', 'broadcast'];
当您仅使用toArray时,它将为数据库和广播通知使用单个数据数组。如果希望为每个方法定义单独的数组,则可以定义toDatabase()和toBroadcast()方法
2) 由于通知是内置在Laravel的核心中的,因此没有简单的方法来改变它的模型,即添加可填充字段。
通知希望您将该添加字段添加到“数据”数组中。顺便说一下,您仍然可以通过以下方式访问:
$notification->my_custom_data_value