2017-05-28 74 views
0

我正在使用spatie/laravel-analytics当我在route.php上使用它时,一切正常,但当我尝试使用它时一个控制器它会抛出这个错误!有点奇怪!这是我的控制器代码:在控制器上使用时未找到类'App Http Controllers Analytics'

<?php 

namespace App\Http\Controllers; 

use Spatie\Analytics\Period; 
use Illuminate\Http\Request; 
use App\Question; 
use App\Contact; 
use Carbon\Carbon; 


class DashboardController extends Controller 
{ 
    public function index() 
    { 

     // $questions = Question::whereNull('answer')->get(); 
     // $messages = Contact::where('status', false)->get(); 


     //Data from Google Analytics 
     $totalVisitors = Analytics::fetchTotalVisitorsAndPageViews(Period::days(7)); 
     // $mostVisitedPages = Analytics::fetchMostVisitedPages(Period::days(7), $maxResults = 5); 
     // $topReferrers = Analytics::fetchTopReferrers(Period::days(7), $maxResults = 5); 
     // $topBrowsers = Analytics::fetchTopBrowsers(Period::days(7), $maxResults = 5); 

     return $totalVisitors; 

     return view('admin.admin-dashboard', compact(
      'messages', 'questions', 'totalVisitors', 'mostVisitedPages', 'topReferrers', 'topBrowsers' 
     )); 
    } 
} 

而且我route.php代码:

use Spatie\Analytics\Period; 

Route::get('/test', function() { 


    // Data from Google Analytics 
    $totalVisitors = Analytics::fetchTotalVisitorsAndPageViews(Period::days(7)); 
    $mostVisitedPages = Analytics::fetchMostVisitedPages(Period::days(7), $maxResults = 5); 
    $topReferrers = Analytics::fetchTopReferrers(Period::days(7), $maxResults = 5); 
    $topBrowsers = Analytics::fetchTopBrowsers(Period::days(7), $maxResults = 5); 

    return $totalVisitors; 


}); 

在先进的感谢!

+0

你的控制器是一个自定义命名空间。因此,除非您使用Analytics(或Spatie \ Analytics),否则它将在相同的名称空间中查找该类。您可以使用完全限定的类名来解决此问题,例如'\ Spatie \ Analytics :: fetchTotalVisitors ......' – rickdenhaan

+0

你是救星!谢谢! – Mohib

回答

4

在控制器,你可以在命名空间行之后试试这个:

use Analytics; 
相关问题