Php 无法访问自定义类文件laravel 5中的模型和帮助器类

Php 无法访问自定义类文件laravel 5中的模型和帮助器类,php,laravel,laravel-5,Php,Laravel,Laravel 5,我在app/Classes/common.php中创建了一个公共类 但每当我试图访问类函数中的模型时 $new_booking_request = BookingRequest::where('host_id','=',Auth::id()) <?php class HomeController extends Controller { public function index() { $newBookingRequest = App\Models\BookingR

我在app/Classes/common.php中创建了一个公共类 但每当我试图访问类函数中的模型时

$new_booking_request = BookingRequest::where('host_id','=',Auth::id())
<?php

class HomeController extends Controller {

  public function index()
  {
    $newBookingRequest = App\Models\BookingRequest::where('host_id','=',Auth::id());
  }

}
我得到了这个错误

Class 'App\Models\BookingRequest' not found
甚至像Auth、URL和Cookie这样的其他类也不起作用。
有没有办法将所有类都放在我的公共类作用域中?

在Laravel 5中,所有的东西都有名称空间,确保你的类有一个正确的名称空间,并且你使用你指定的名称空间调用它

要在另一个类中包含类,请确保使用
use
关键字在类定义的顶部导入必要的类。您还可以使用
\
全局调用该类。例如:
\Auth
\URL
\Cookie

对于L5中的名称空间,这里有一个快速示例:

<?php namespace App\Models;

class BookingRequest {
  // class definition  
}

当您的命名空间错误时,您会遇到此问题,或者您忘记使用命名空间

由于common.php位于App/Classes内部,因此在common.php内部执行以下操作:

<?php namespace App\Classes;

use View, Auth, URL; 

class Common {
    //class methods
}

使用会话,Cookie
(在名称空间之后)或
\Session::get()
等。
<?php namespace App\Classes;

use View, Auth, URL; 

class Common {
    //class methods
}
<?php namespace App\Models;

    BookingRequest extends \Eloquent {
        //other definitions
    }
<?php namespace App\Classes;

use App\Models\BookingRequest;

use View, Auth, URL; 

    class Common {
        //class methods
    }