This tutorial explain how to pass parameter from controller to model in laravel.
Parameter pass from Controller to Model
You can pass parameter and variables from controller to model by make a method in model that require some parameters and it pass from controller like below example
Controller
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Models\User; class UserController extends Controller{ public function store(Request $request){ $role = "user"; $users = new User; $users = $users->validUsers($role); dd($users); } }
User Model
Create a validUsers() method for get users table data according to role.
<?php namespace App\Models; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Model; class User extends Model { use HasFactory; protected $guarded = []; public function validUsers($role){ $users = User::where('role', $role)->get(); return $users; } }