Laravel – Class “App\Http\Controllers\Mail” not found

When you encounter the error message “Class ‘App\Http\Controllers\Mail’ not found” in Laravel, it typically indicates an issue with the import statement or namespace declaration for the Mail class. To resolve this error, you can follow these steps:

Solution:

Make sure that the namespace App\Http\Controllers matches the namespace used in your controller file.

use Illuminate\Support\Facades\Mail;

Example:

<?php
    
namespace App\Http\Controllers;
    
use Illuminate\Http\Request;
use App\Models\Order;
use App\Mail\OrderShipped;
use Illuminate\Support\Facades\Mail;
    
class UserController extends Controller
{
    /**
     * Display a listing of the resource.
     *
     * @return \Illuminate\Http\Response
     */
    public function index(Request $request)
    {
        $order = Order::findOrFail($request->order_id);
  
        Mail::to($request->user())->send(new OrderShipped($order));
          
        return view('users');
    }
}

I hope it can help you.

Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x