kaliop/twig-express-bundle

在 Symfony 项目中浏览和渲染“静态”Twig 模板。此扩展包是 TwigExpress 工具的移植版本,旨在用于私有前端原型,而不是面向公众的页面。

安装: 592

依赖项: 0

建议者: 0

安全: 0

星标: 0

关注者: 3

分支: 0

开放问题: 0

类型:symfony-bundle

3.1.0 2017-06-12 12:20 UTC

This package is not auto-updated.

Last update: 2024-09-15 00:51:08 UTC


README

在 Symfony 项目中浏览和渲染“静态”Twig 模板。此扩展包是从TwigExpress独立工具移植过来的,旨在用于私有前端原型。如果您是使用 Symfony 的设计师或前端开发者,您可能会喜欢它。请勿在生产环境中使用此扩展包或其路由!

功能

  1. 提供对扩展包 Resources/views/static 文件夹中 Twig 模板的访问,显示此文件夹和子文件夹的索引页面。(注意,每个扩展包的根文件夹都可以更改。)
  2. 渲染 Twig 模板,并报告 Twig 错误,包括有错误的模板的摘录。

重要:此扩展包的控制器将 无法 渲染依赖于其他现有控制器提供的数据的模板。它旨在用于不依赖于数据库或服务数据的“静态”原型。

安装

使用 Composer 在您的 Symfony 项目中安装

composer require kaliop/twig-express-bundle

然后,您需要在 app/AppKernel.php 中注册此扩展包。这可能是这样的:

class AppKernel extends Kernel
{
    public function registerBundles()
    {
        $bundles = [
            /* ... */
            new Kaliop\TwigExpressBundle\KaliopTwigExpressBundle(),
        ];
    }
}

入门指南

假设您有一个名为 MyAwesomeBundle 的扩展包,并且它包含在 MyAwesomeBundle/Resources/views/static 中的“静态”Twig 模板。我们所说的“静态”Twig 模板是指不依赖于控制器提供的数据的模板。这可能是一些简单的 HTML 页面,带有 {% include %} 标签和其他原生 Twig 特性。

首先,您需要激活 TwigExpress 路由。将以下内容添加到您的路由配置中(例如在 routing_dev.yml):

twig_express:
    resource: "@KaliopTwigExpressBundle/Resources/config/routing.yml"

然后,在您的主配置中(例如在 config_dev.yml),告诉 KaliopTwigExpressBundle 它可以渲染您扩展包中的模板

twig_express:
    bundles:
        -   MyAwesomeBundle

最后,导航到 http://[your-hostname]/static/ 来探索您的静态视图。您应该能够探索和渲染来自 MyAwesomeBundle/Resources/views/static 的 Twig 模板。

演示页面

此扩展包包含自己的演示 static 模板,演示了一些附加功能。要激活它,将此导入添加到您的 config_dev.yml

imports:
    - resource: "@KaliopTwigExpressBundle/Resources/config/demo.yml"

高级配置

对于每个扩展包,您不仅可以提供扩展包的名称,还可以更改 URL 滑块(在 URL 中标识此扩展包的部分)和扩展包“静态”模板的路径

twig_express:
    bundles:
        # 'name' is required and must be a valid bundle name;
        # 'root' defaults to 'Resources/views/static';
        # 'slug' will use an automatic value if not defined.
        -   name: MyStaticBundle
            root: Resources/views/static-html
            slug: ohmy
        -   name: AwesomeStaticBundle
            root: Resources/components
            slug: awesome

如果您想使用除 /static/… 之外的不同 URL 基础,请使用 twig_express.url_base 参数

parameters:
    twig_express.url_base: something-different