如何使用Twig和翻译设置Laravel 5?

时间:2015-08-24 09:35:13

标签: internationalization laravel-5 twig translation

我希望项目包含:

  • Laravel 5
  • Twig模板引擎
  • Twig中的trans标签,适用于标准的Laravel翻译(基于php数组)

这是我的composer.json:

"require": {
    "laravel/framework": "5.1.*",
    "rcrowe/TwigBridge": "~0.8.1"
}

app.php:

'providers' => [
    // ...
    TwigBridge\ServiceProvider::class,
    // ...
]

'aliases' => [
    'Twig'      => TwigBridge\Facade\Twig::class,
],

这是我的控制器:

class Page extends Controller
{
    public function home()
    {
        $name = 'Guest';
        return Twig::render('twig.twig', compact('name'));
    }
}

但我有这个错误:

ReflectionException in Container.php line 736:
Class view does not exist

2 个答案:

答案 0 :(得分:0)

我在项目中多次使用TwigBridge而没有收到该错误,但您仍然可以使用标准的Laravel Twig::render功能而不是View::makehttps://github.com/rcrowe/TwigBridge#usage

我的安装步骤:

  1. 在作曲家中需要
  2. 添加服务提供商'TwigBridge\ServiceProvider',
  3. 添加facase 'Twig' => 'TwigBridge\Facade\Twig',
  4. 使用View::makeview('view', $params)
  5. Laravel的默认翻译类已经包含在TwigBridge中,所以如果我没记错的话你可以使用{{ trans('website.key') }} https://github.com/rcrowe/TwigBridge#functionsfiltersvariables

答案 1 :(得分:0)

我和你的问题一样,尝试在变量的末尾添加提供者和别名(在View之后)