twig 相关问题

Twig是一款适用于PHP的现代,快速,灵活且安全的模板引擎。为Symfony创建并由Drupal 8采用。

我的资产仅在生产中未链接到我的树枝文件中

我目前正在将我的应用程序从 Webpack 迁移到 Vite。 我的应用程序正在使用 React 和 Symfony。 所以我遵循了 vite-bundle 和 vite-symfony-plugin 说明。开发中一切都工作得很好

回答 1 投票 0

有没有办法在 PHP Twig 中比较忽略大小写的字符串?

我正在 PHP 中使用树枝,我需要添加一种方法来过滤结果。我决定通过注入过滤关键字来使用模板语言来完成此操作。 (我的数据获取所有类别...

回答 1 投票 0

Unescape 或 html 解码

我正在使用twig 1.12.2。我的代码从代码隐藏生成一些元素,当使用最新版本的 twig 渲染这些元素时,它们会进行 html 编码 {% for files_folders %} 我正在使用twig 1.12.2。我的代码从代码隐藏生成一些元素,当使用最新版本的 twig 渲染这些元素时,它们会被 html 编码 {% for item in files_folders %} <tr class="{{ cycle(['tr_odd', 'tr_even'], loop.index) }}"> <td><img src="../templates/images/sharepoint/{{ item.ContentType }}.gif" border="0" alt=""/></td> <td>{{ item.Link }}</td> <td>{{ item.Modified }}</td> <td>{{ item.FileSize }}</td> <td>{{ item.FileType }}</td> </tr> {% endfor %} 这将输出这个 <tr class="tr_even"> <td><img src="../templates/images/sharepoint/Document.gif" border="0" alt=""/></td> <td>&lt;a href=&#039;?download=/ddd.png&#039;&gt;ddd.png&lt;/a&gt;</td> <td>2013-03-04 17:47:38</td> <td>64.8 KB</td> <td>png</td> </tr> <tr class="tr_odd"> <td><img src="../templates/images/sharepoint/Document.gif" border="0" alt=""/></td> <td>&lt;a href=&#039;?download=/asdasd.png&#039;&gt;asdasd.png&lt;/a&gt;</td> <td>2013-03-03 20:01:52</td> <td>66.04 KB</td> <td>png</td> </tr> 当我调试并在将数据发送到 twig 之前查看数据时,它不会被转义。我还没有找到任何替代 {{ item.Link }} 来按原样呈现数据。 谢谢 您可以使用 raw 过滤器使 twig 渲染原始 HTML。 {% autoescape %} {{ var|raw }} {# var won't be escaped #} {% endautoescape %} 来源 使用 |raw 时应小心。说数据是安全的,意味着您 100% 信任它。 我个人建议使用自定义树枝过滤器: class CustomExtension extends \Twig_Extension { public function getFilters() { return array( new \Twig_SimpleFilter('unescape', array($this, 'unescape')), ); } public function unescape($value) { return html_entity_decode($value); } } 将以下内容添加到您的 services.yml(或者翻译为 xml)。 services: ha.twig.custom_extension: class: HA\SiteBundle\Twig\CustomExtension tags: - { name: twig.extension } 或http://twig.sensiolabs.org/doc/filters/raw.html {% autoescape false %} {{ your_item }}{# your_item won't be escaped #} {% endautoescape %} 如果您使用 Drupal 8 并且 raw 或 autoscape 都不起作用,则可能会发生这种情况,因为您尝试打印的变量是一个包含安全输出模板的渲染数组(例如,一个 hl2br 过滤器)。 在这种情况下,您需要通过渲染数组访问该值并对其进行过滤,例如: {% autoescape false %} {{ item.content['#context']['value'] }} {% endautoescape %}

回答 4 投票 0

如何翻译 Symfony 3 形式?

翻译树枝模板中的内容似乎简单明了:我运行 bin/console Translation:update 来填充翻译文件。问题在于它似乎忽略了形式。 创建后

回答 3 投票 0

Symfony 6,根据第一个字段选择显示条件表单字段

我想根据“presenceEvent”的选择(设置为“Oui”或“true”)显示或隐藏“presenceDejeuner”和“participerActivite”字段。 S...

回答 1 投票 0

递归 html 调用未返回正确的值

这里我尝试递归调用一个html模板,它在类别中循环,其中包含附加到某些类别的某些自定义字段,一切正常,但计数器(

回答 1 投票 0

变量“produit”不存在

我是 Symfony 的初学者。我陷入困境,因为我无法调试我的电子商务应用程序。我实在不明白问题出在哪里。我正在尝试显示数据库中的数据,但它给了我一个错误

回答 1 投票 0

如何在 Symfony 6 中安装 select2

我正在尝试使用 select2 多选框(药丸盒)重新填充表单字段。 我想使用 CDN 安装 select2: https://select2.org/getting-started/installation#using-select2-from-a-cdn

回答 1 投票 0

如何截断控制器中的树枝数组[行]?

我有一些树枝数组要显示在数据表上。 ` $值 = 数组( $row['成员'] 。 '-'。 $行['电子邮件'], $row['交易日期'], $...

回答 1 投票 0

Drupal 中如何从段落中的字段(媒体->文档)获取链接?

我有一个包含 3 个字段的 Drupal 段落: “文件”字段是类型为“文档”的“媒体”字段 我正在尝试在这个

回答 1 投票 0

Drupal 10 视图:字段/自定义文本显示字段的翻译标签

我正在使用 Drupal 10 构建一个双语网站,并使用视图来显示内容项列表。在我看来,我正在使用 field: Custom text 按照我想要的方式格式化每个项目的预告片。 我有

回答 1 投票 0

Shopware 树枝小提琴

我想在 https://shopware.foo/ 中渲染一个树枝表达式 {{ page.product.translated.description|raw|striptags|sw_sanitize|u.truncate(125, '...') }} 有 https://twigfiddle.com/ 但它没有

回答 1 投票 0

树枝和 Nunjucks 问题

我是编程新手,我正在使用PHP作为后端并学习MVC,请问如果我们使用Twig,我们还需要像Nunjucks这样的前端模板引擎吗?据我所知,Nunjucks 是模板 e...

回答 1 投票 0

如何修复由 twig 中的简单逻辑导致的错误网关错误?

我正在为竞赛活动制作一个网络应用程序,需要在网页上创建/编辑/删除按钮,这样我就不需要在后端做所有事情。 它是基于 PHP/Symfony 构建的,我使用 TWIG 作为...

回答 1 投票 0

如何覆盖 symfony 中自定义字段的模板(用于在 easyadmin 中编辑)

我使用A2lix进行翻译,我使用easyadmin。我创建了一个“TranslationField”: 我使用 A2lix 进行翻译,并使用 easyadmin。我创建了一个“TranslationField”: <?php declare(strict_types=1); namespace App\Controller\Admin\Field; use A2lix\TranslationFormBundle\Form\Type\TranslationsType; use EasyCorp\Bundle\EasyAdminBundle\Contracts\Field\FieldInterface; use EasyCorp\Bundle\EasyAdminBundle\Field\FieldTrait; final class TranslationField implements FieldInterface { use FieldTrait; public static function new(string $propertyName, ?string $label = null, array $fieldsConfig = []): self { return (new self()) ->setProperty($propertyName) ->setTemplatePath('admin/field/translation_field.html.twig') ->setTemplateName('translation_field') ->setLabel($label) ->setFormType(TranslationsType::class) ->setFormTypeOptions([ 'default_locale' => 'fr', 'fields' => $fieldsConfig, ]); } 在我的EntityCrudController.php中,我使用这个TranslationField public function configureCrud(Crud $crud): Crud { return $crud ->setEntityLabelInSingular('Product') ->setEntityLabelInPlural('Products') ->setPageTitle("index", "Admin product") ->setPaginatorPageSize(20) ->addFormTheme('@FOSCKEditor/Form/ckeditor_widget.html.twig'); } public function configureFields(string $pageName): iterable { yield TranslationField::new('translations', ' ', [ 'name' => [ 'field_type' => TextType::class, 'required' => true, 'label' => 'Name of the product FR', 'locale_options' => [ 'fr' => ['label' => 'Name of the product FR'], 'en' => ['label' => 'Name of the product EN'], 'es' => ['label' => 'Name of the product ES'], 'it' => ['label' => 'Name of the product IT'], 'de' => ['label' => 'Name of the product DE'], ], ] ]) ->setTemplatePath('admin/field/translation_field.html.twig') ->hideOnIndex(); [...] } 我的树枝模板“translation_field.html.twig”有带有语言的选项卡: {# @var ea \EasyCorp\Bundle\EasyAdminBundle\Context\AdminContext #} {# @var field \EasyCorp\Bundle\EasyAdminBundle\Dto\FieldDto #} {# @var entity \EasyCorp\Bundle\EasyAdminBundle\Dto\EntityDto #} {% set render_as_html = field.customOptions.get('renderAsHtml') %} </dd></div></dl> <div class="data-row"> <ul class="nav nav-tabs w-100 border-bottom-0" role="tablist"> {% set myArray = field.value|toArray %} {% for key_langue, valueObject in myArray['collection'] %} <li class="nav-item" role="presentation"> <a id="{{ key_langue|upper }}-home-tab" data-bs-toggle="pill" data-bs-target="#{{ key_langue|upper }}-home" class="border-bottom nav-link{% if key_langue == app.request.locale %} active{% endif %}" href="#{{ key_langue }}-tab" aria-controls="{{ key_langue }}-tab" role="tab" data-toggle="tab"> {{ key_langue|upper }} </a> </li> {% endfor %} </ul> [...] 当我看到我家的详细信息时,没关系,这是我使用的模板“translation_field.html.twig”。 当我点击“编辑”时,这不是我的模板,这是该字段的 Easyadmin 标准模板,我没有包含所有语言的选项卡。 我已经阅读了 symfony 文档并尝试理解为什么我的模板在编辑时没有被使用。看来我的模板应该用于详细信息并使用代码进行编辑 ->setTemplatePath('admin/field/translation_field.html.twig') 在 easyadmin 中编辑我的实体时,如何定义为此字段使用我的模板? 我也遇到同样的问题,请问你找到方法了吗?我也一直在找。谢谢!

回答 1 投票 0

重写复选框表单字段会产生重复标签并且在 Symfony 4.4 中没有字段

我无法覆盖 Twig 模板内 Symfony 表单中的复选框字段。 我在 Twig 模板中使用以下代码构建该字段: {{ form_row(form.legal, { ‘标签’...

回答 2 投票 0

如何在 Twig 模板中渲染 DateTime 对象

我的实体之一中的字段之一是“日期时间”变量。 如何将此字段转换为字符串以在浏览器中呈现? 这是一个代码片段: {% 游戏中的游戏 %} ... ...

回答 0 投票 0

如何在Twig中进行字符串数学计算

我有类似“((2*160)+53)*1.00000”的字符串,我将其数据接收到Twig模板中。如何进行计算并返回计算出的数字,而不是数学的纯字符串? 所以exp...

回答 1 投票 0

使用 Twig 路径的 Ajax url 参数

当我在ajax url路径中传递参数时,我的twig视图出现问题, 从逻辑上讲,twig 在 javascript 之前执行,因此他无法识别作为参数传递的输入值。有没有解决办法...

回答 3 投票 0

Shopware 6 覆盖 pagination.html.twig 不起作用

我正在尝试覆盖 Shopware 6 店面中的 pagination.html.twig 模板,但它不起作用。 我的 pagination.html.twig 是: {% sw_extends '@Storefront/storefront/component/pagination.htm...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.