Laravel 通知 - 调用字符串上的成员函数 routeNotificationFor()
Laravel Notification - Call to a member function routeNotificationFor() on string
Laravel 5.5
控制器
public function sendBookingSms(){
$checkState = session()->get('checkState');
$staffs = Staff::whereIn('staffId',$checkState)->get();
foreach ($staffs as $staff) {
$email = str_replace(" ","","44".substr($staff->mobile, 1)).'@mail.mightytext.net';
Notification::send($email, new NewBooking($email));
}
return $staffs;
session()->forget('checkState');
return redirect(route('booking.current'))->with('message','Succesfully Send SMS to selected staffs !!');
}
NewBooking.php(通知)
public function toMail($notifiable)
{
return (new MailMessage)
->line('The introduction to the notification.')
->action('Notification Action', url('/'))
->line('Thank you for using our application!');
}
调用此控制器时出现此错误。
$staffs.
{
"staffId":45,
"forname":"Eldhose",
"surname":"John",
"categoryId":2,
"email":"devhelloworld@gmail.com",
"mobile":"07588593278",
"whatsappNumber":"57656578658",
"gender":1,
"address":"Poole",
"pincode":null,
"modeOfTransport":1,
"pickupLocation":"Office",
"branchId":0,
"zoneId":1,
"bandId":1,
"paymentMode":1,
"payRateWeekday":10,
"payRateWeekNight":20,
"payRateWeekendDay":10,
"payRateWeekendNight":20,
"payRateSpecialBhday":11,
"payRateSpecialBhnight":15,
"payRateBhday":11,
"payRateBhnight":15,
"status":1,
"deleted_at":null,
"created_at":"2018-02-26 22:16:44",
"updated_at":"2018-02-26 22:16:44"
}
请帮助我....谢谢
Notification::send() 要求第一个参数是一个对象,通常是使用 Notifiable 特征的对象。您只传递了一个包含电子邮件地址的字符串,因此出现了错误。
如果您只想向给定的电子邮件地址发送通知,则需要使用 on-demand 通知。以下应该可以解决问题:
Notification::route('mail', $email)->notify(new NewBooking($email));
有关更多详细信息,请参阅文档:https://laravel.com/docs/5.6/notifications#sending-notifications
最新文档:https://laravel.com/docs/9.x/notifications#on-demand-notifications
Laravel 5.5
控制器
public function sendBookingSms(){
$checkState = session()->get('checkState');
$staffs = Staff::whereIn('staffId',$checkState)->get();
foreach ($staffs as $staff) {
$email = str_replace(" ","","44".substr($staff->mobile, 1)).'@mail.mightytext.net';
Notification::send($email, new NewBooking($email));
}
return $staffs;
session()->forget('checkState');
return redirect(route('booking.current'))->with('message','Succesfully Send SMS to selected staffs !!');
}
NewBooking.php(通知)
public function toMail($notifiable)
{
return (new MailMessage)
->line('The introduction to the notification.')
->action('Notification Action', url('/'))
->line('Thank you for using our application!');
}
调用此控制器时出现此错误。
$staffs.
{
"staffId":45,
"forname":"Eldhose",
"surname":"John",
"categoryId":2,
"email":"devhelloworld@gmail.com",
"mobile":"07588593278",
"whatsappNumber":"57656578658",
"gender":1,
"address":"Poole",
"pincode":null,
"modeOfTransport":1,
"pickupLocation":"Office",
"branchId":0,
"zoneId":1,
"bandId":1,
"paymentMode":1,
"payRateWeekday":10,
"payRateWeekNight":20,
"payRateWeekendDay":10,
"payRateWeekendNight":20,
"payRateSpecialBhday":11,
"payRateSpecialBhnight":15,
"payRateBhday":11,
"payRateBhnight":15,
"status":1,
"deleted_at":null,
"created_at":"2018-02-26 22:16:44",
"updated_at":"2018-02-26 22:16:44"
}
请帮助我....谢谢
Notification::send() 要求第一个参数是一个对象,通常是使用 Notifiable 特征的对象。您只传递了一个包含电子邮件地址的字符串,因此出现了错误。
如果您只想向给定的电子邮件地址发送通知,则需要使用 on-demand 通知。以下应该可以解决问题:
Notification::route('mail', $email)->notify(new NewBooking($email));
有关更多详细信息,请参阅文档:https://laravel.com/docs/5.6/notifications#sending-notifications
最新文档:https://laravel.com/docs/9.x/notifications#on-demand-notifications