【问题标题】:How to use custom twig functions in laravel using TwigBridge如何使用 TwigBridge 在 laravel 中使用自定义树枝函数
【发布时间】:2013-05-07 09:36:23
【问题描述】:

我正在使用带有 TwigBridge 的 laravel 的树枝。我想注册一个自定义函数以在 twig 模板中使用。

文档声明可以通过扩展数组添加扩展,但我不清楚。

文档指的是什么扩展数组?

【问题讨论】:

    标签: php twig laravel


    【解决方案1】:

    我遵循的过程是:

    1. app/extensions/twig/TwigFilters.php 创建我的过滤器类:

      namespace App\Extensions\Twig;
      
      class TwigFilters extends \Twig_Extension {
          //... filters implementation
      }
      
    2. 将过滤器文件夹添加到composer.json autoload > classmap

      "autoload": {
          "classmap": [
              ...
              "app/extensions/twig",
              ...
          ]
      },
      
    3. 更新自动加载器:php composer.phar dump-autoload

    4. app/config/packages/rcrowe/twigbridge/config.php 创建 TwigBridge 配置:

      php artisan config:publish rcrowe/twigbridge
      
    5. 在之前创建的 config.php 上编辑 extensions 键:

      'extensions' => array(
          ...
          'App\Extensions\Twig\TwigFilters',
          ...
      )
      
    6. 该类中定义的所有过滤器都已在 Twig 视图中可用。

    其他信息:

    【讨论】:

    • 很好的答案。谢谢。
    • 很好,但我也让我的工作无需编辑我的composer.json 文件。似乎只需将扩展名添加到config/twigbridge.php 就足够了。
    【解决方案2】:

    这里指的是配置文件中的this array。您应该使用php artisan config:publish rcrowe/twigbridge 将配置发布到您的app/,然后编辑该数组。正如您在同一个配置文件中看到的,您还可以添加别名。

    您可以使用扩展 \TwigBridge\Extension 的自定义函数创建一个类,然后将其添加到您的配置中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-09-20
      • 1970-01-01
      • 1970-01-01
      • 2013-06-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-04
      相关资源
      最近更新 更多