Laravel 如何向具有不同成员角色的成员发送通知?

Laravel 如何向具有不同成员角色的成员发送通知?,laravel,Laravel,立即,我想按照标题中的要求提问。 我有这样的控制器: public function store(Request $request) { // $this->validate($request, [ 'status'=> 'required|min:1|max:2', 'subject' => 'required|min:10|max:255', 'body' => 'required|min:10|max

立即,我想按照标题中的要求提问。
我有这样的控制器:

public function store(Request $request)
{
    //

    $this->validate($request, [
        'status'=> 'required|min:1|max:2',
        'subject' => 'required|min:10|max:255',
        'body' => 'required|min:10|max:100000'
    ]);
    if ($request->status == 1){
        $this->validate($request, [
            'email' => 'required|email',
        ]);
        $user = User::whereEmail($request->email)->firstOrFail();
        $notice = new Notice();
        $notice->user_id = $user->id;
        $notice->title = $request->subject;
        $notice->priority = $request->priority;
        $notice->body = $request->body;
        $notice->status = 0;

        if ($request->hasFile('featured')){
            $featured = $request->featured;
            $featured_new_name = time().$featured->getClientOriginalName();
            $featured->move('uploads/posts', $featured_new_name);
            $notice->file = 'uploads/posts/'. $featured_new_name;
        }
        $notice->save();
        session()->flash('message', "Send Message to ".$user->name." Successful!");
        Session::flash('type', 'success');
        Session::flash('title', 'Message Send Success!');
        return redirect()->route('adminMessage.create');
    }
    else {

        $users = User::all();

        if ($request->hasFile('featured')){
            $featured = $request->featured;
            $featured_new_name = time().$featured->getClientOriginalName();
            $featured->move('uploads/posts', $featured_new_name);
            $attachment = 'uploads/posts/'. $featured_new_name;
        }
        foreach ($users as $user){

            $notice = new Notice();
            $notice->user_id = $user->id;
            $notice->title = $request->subject;
            $notice->priority = $request->priority;
            $notice->body = $request->body;
            $notice->status = 0;

            if ($request->hasFile('featured')){
                $notice->file  = $attachment;
            }
            $notice->save();
        }
        session()->flash('message', "Send Message to all Users Successful!");
        Session::flash('type', 'success');
        Session::flash('title', 'Message Send Success!');
        return redirect()->route('adminMessage.create');
    }
}
我在该字段中有2个状态:
对于状态1,我发送所选成员(仅一个)
对于状态2,我为所有用户使用发送
$User=User::all()

因此,我需要帮助以会员身份发送通知
我有会员资格表,例如:

=========================
| id |  name  |  count  |
-------------------------
|  1 |  free  |  200    |
|  2 |  free  |  200    |
|  3 |  free  |  200    |
|  4 |  free  |  200    |

如何向会员Id:2,3,4发送消息

如果它是
用户
模型中的属性,您可以使用querys查找所需的一个或多个用户


/*
我使用一个开关,以防您有两个以上的通知状态需要处理
sendTo函数是在控制器中声明的用于处理这些情况的函数。
*/
开关($notice->status){
/*根据会员id查询用户以发送通知*/
案例1:
$user=user::where('membership_id',$the_membership)->first();
返回$this->sendTo($user);
案例2:
/*获取所有用户*/
$users=User::all();
返回$this->sendTo($users);
/*处理其他通知状态*/
违约:
返回$this->sendToDefault();
}

成员身份在用户表中作为外键进行关联?成员身份角色是一个模型,与用户模型有很多关系?是的,我在用户表中有外键,所以我的问题只是如何发送单独的消息,例如:$membership=membership::whereId(2,3,4)->get();您在错误的表中执行查询,如果要按用户的成员身份检索用户,则必须使用
User::where('membership\u id',$the\u id)
User::where('membership\u id',$the\u id)
,如何分隔id<代码>用户::where('membership_id','2,3,4')
像这样,我已经完成了这一部分,但是我如何才能同时向成员身份=2,3,4发送通知?使用
用户::where('membership_id','2,3,4')
检索具有这些成员身份的用户。
用户::where('membership_id',[2,3,4])
谢谢,这个代码解决了我的问题。。。。