laravel通知未定义索引:用户id
我要做按摩通知,我已经做了通知步骤, 但是给了我这个错误 当我做laravel通知未定义索引:用户id,laravel,Laravel,我要做按摩通知,我已经做了通知步骤, 但是给了我这个错误 当我做dd($notifiable)时我找到了所有数据 未定义索引:用户id或 未定义索引:名称 数据库通知表coulmn data{“user_id”:5,“name”:“Ibrahim”} 模型 视图: 您的代码中的封装似乎有问题。首先,如果您想要快速且不安全的方式,您必须将模型的属性公开,但是如果您想要OOP方式,您必须编写setter来为您实现该逻辑。 第一种也是不安全的方法: class YourModel { publ
dd($notifiable)时代码>我找到了所有数据
未定义索引:用户id或
未定义索引:名称
数据库通知表coulmn data{“user_id”:5,“name”:“Ibrahim”}
模型
视图:
您的代码中的封装似乎有问题。首先,如果您想要快速且不安全的方式,您必须将模型的属性公开,但是如果您想要OOP方式,您必须编写setter来为您实现该逻辑。
第一种也是不安全的方法:
class YourModel {
public $user_id;
.
.
.
}
面向对象方法:
Class {
public function setUserId(int $userId)
{
$this->user_id = $userId;
}
.
.
.
}
如果您愿意得到确切答案,请在此处复制您的控制器类和模型。在此auth()->user()->notify(new SendMassages($user_id));您似乎没有设置$user\u id,可能需要在上面设置$user\u id=Auth::id();谢谢你的评论我尝试了你的解决方案,但我发现了同样的问题error@HimaHima您能提供您的模型和控制器代码吗?类SendMassages扩展通知{use Queueable;public$user\u id;public$user\u id;public function\u构造($user\u id){$this->user\u id=$user\u id;}公共函数via($notifiable){return['database'];}公共函数toDatabase($notifiable){//dd($notifiable);return['user\u id'=>$this->user\u id,'user'=>$notifiable];}}}公共函数存储(Request$Request){$chating=newchats()$chating->chat=$request->input('chat');$chating->user_id=Auth::id();$chating->employee id=$request->input('employeeid');$chating->save();$user_id=$request->input('employeeid');Auth()->user()->notify(new SendMassages($user_id));return redirect()->back(); }
<a href="{{url('chatnow',$notification->data['user_id'])}}">{{ $notification->data['name'] }}</a>
class SendMassages extends Notification
{
use Queueable;
public $user;
public $user_id;
public function __construct($user_id)
{
$this->user_id = $user_id;
}
public function via($notifiable)
{
return ['database'];
}
public function toDatabase($notifiable)
{
// dd($notifiable);
return [
'user_id' => $this->user_id,
'user'=>$notifiable
];
}
}
class YourModel {
public $user_id;
.
.
.
}
Class {
public function setUserId(int $userId)
{
$this->user_id = $userId;
}
.
.
.
}