gpt4 book ai didi

php - 如何停止向自己发送通知?

转载 作者:行者123 更新时间:2023-11-29 10:49:41 28 4
gpt4 key购买 nike

当我喜欢自己的帖子时,我会收到通知,这不应该发生,

现在我想要的是,如果像我自己的帖子一样,通知不应保存在数据库中,

我的 Controller :

    public function store(Request $request,$id)
{
$like = new Like();
$like->user_id =Auth::user()->id;
$like->post_id = $id;
if($like->save())
{
if (Auth::user()->id != $id)
{
$user = User::findOrFail($request->get('user_id'));
Notification::send($user , new likePost($like));
$data = auth()->user()->name.'Liked Your Post '.'<Strong>'.$request->input('title').'</strong'.'<\br>'.'On'.Carbon::now();
StreamLabFacades::pushMessage('test' , 'likePost' , $data);
}
}

最佳答案

您的第二个参数 ($id) 指的是帖子 ID。

您的意思是,如果您的 post_id 不等于您的 user_id,则发送通知。在这种情况下,只会出现一种情况。

我不确定你的逻辑是如何设置的,但我想你有另一个名为 Post 的模型。

你的逻辑应该是这样的:

public function store(Request $request, $post_id){

$like = Like::create([ 'user_id' => Auth::user()->id, 'post_id' => $post_id]);

$post = Post::whereId($post_id)->first();

if( $post->user_id !== Auth::user()->id ) {
//SEND Notification code here
}

}

更好的方法是在 Like 模型中创建一个指向 Post 模型的关系。参见这里:https://laravel.com/docs/5.4/eloquent-relationships#one-to-many-inverse

特别是一对多逆。他们有一个带有注释的示例,我认为与您的案例非常相似。

希望这有帮助

关于php - 如何停止向自己发送通知?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43957466/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com