我是laravel 5的新手,我在家庭控制器中添加了一行:
echo Lang::getLocale();
但是出现错误:
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 :(得分:5)
您必须正确引用Lang
别名。通过在顶部导入它:
use Lang;
或者用反斜杠预先填写每个电话:
\Lang::getLocale();
答案 1 :(得分:2)
您需要添加:
use Illuminate\Support\Facades\Lang;
扩展控制器后。就在第一行之后。
或
use Lang;
答案 2 :(得分:0)
您可以这样做:
$defaultLocale = config('app.locale');
答案 3 :(得分:0)
简单,尝试一下
app()->getLocale()