2015-04-04 3 views
0

Я новичок в Laravel 5, я добавить строку в HomeController:Laravel 5 прибудете язык по умолчанию в контроллере

echo Lang::getLocale(); 

но ошибки ocurrs:

FatalErrorException in HomeController.php line 47: 
Class 'App\Http\Controllers\Lang' not found 


<?php namespace App\Http\Controllers; 

use App\Article; 
use App\Photo; 
use App\VideoAlbum; 
use App\PhotoAlbum; 
use Illuminate\Database\Eloquent; 
use Illuminate\Support\Facades\DB; 

class HomeController extends Controller { 

    /* 
    |-------------------------------------------------------------------------- 
    | Home Controller 
    |-------------------------------------------------------------------------- 
    | 
    | This controller renders your application's "dashboard" for users that 
    | are authenticated. Of course, you are free to change or remove the 
    | controller as you wish. It is just here to get your app started! 
    | 
    */ 

    /** 
    * Create a new controller instance. 
    * 
    * @return void 
    */ 
    public function __construct() 
    { 
     //$this->middleware('auth'); 

     //parent::__construct(); 

     //$this->news = $news; 
     //$this->user = $user; 
    } 


    /** 
    * Show the application dashboard to the user. 
    * 
    * @return Response 
    */ 
    public function index() 
    { 

     //echo Lang::getLocale(); 
     $articles = Article::with('author')->orderBy('position', 'DESC')->orderBy('created_at', 'DESC')->limit(4)->get(); 

//  TODO: abstract to model 
     $sliders = Photo::join('photo_albums', 'photo_albums.id', '=', 'photos.photo_album_id')->where('photos.slider', 
      1)->orderBy('photos.position', 'DESC')->orderBy('photos.created_at', 'DESC')->select('photos.filename', 
      'photos.name', 'photos.description', 'photo_albums.folder_id')->get(); 

     $photoAlbums = PhotoAlbum::select(array(
      'photo_albums.id', 
      'photo_albums.name', 
      'photo_albums.description', 
      'photo_albums.folder_id', 
      DB::raw('(select filename from ' . DB::getTablePrefix() . 'photos WHERE album_cover=TRUE and ' . DB::getTablePrefix() . 'photos.photo_album_id=' . DB::getTablePrefix() . 'photo_albums.id LIMIT 1) AS album_image'), 
      DB::raw('(select filename from ' . DB::getTablePrefix() . 'photos WHERE ' . DB::getTablePrefix() . 'photos.photo_album_id=' . DB::getTablePrefix() . 'photo_albums.id ORDER BY position ASC, id ASC LIMIT 1) AS album_image_first') 
     ))->limit(8)->get(); 

     $videoAlbums = VideoAlbum::select(array(
      'video_albums.id', 
      'video_albums.name', 
      'video_albums.description', 
      'video_albums.folder_id', 
      DB::raw('(select youtube from ' . DB::getTablePrefix() . 'videos WHERE album_cover=TRUE and ' . DB::getTablePrefix() . 'videos.video_album_id=' . DB::getTablePrefix() . 'video_albums.id LIMIT 1) AS album_image'), 
      DB::raw('(select youtube from ' . DB::getTablePrefix() . 'videos WHERE ' . DB::getTablePrefix() . 'videos.video_album_id=' . DB::getTablePrefix() . 'video_albums.id ORDER BY position ASC, id ASC LIMIT 1) AS album_image_first') 
     ))->limit(8)->get(); 

     return view('pages.home', compact('articles', 'sliders', 'videoAlbums', 'photoAlbums')); 

     //return view('pages.welcome'); 
    } 

} 

В чем проблема?

+0

@hkguile если вы счастливы с моим ответом ниже, вы можете принять его :) –

ответ

2

Вы должны правильно ссылаться на Lang псевдоним. Либо импортировать его в верхней части:

use Lang; 

Или предваряя каждый вызов с помощью обратной косой черты:

\Lang::getLocale(); 
+0

Это вернет текущую локаль, а не по умолчанию, верно? – Fusion

2

Вам нужно добавить:

use Illuminate\Support\Facades\Lang; 

после расширения контроллера. сразу после первой строки.

или

use Lang; 
+0

'' используйте Illuminate \ Support \ Facades \ Lang; '' чрезмерно. Фасад имеет псевдоним в глобальном пространстве имен. –

Смежные вопросы