草庐IT

Twig_Template

全部标签

php - Twig - 如何随机化数组中的项目并循环它们?

如何随机排列数组中的项目并循环它们?{%foriteminarticle.resources|shuffle|slice(1)%}...{%endfor%}我收到这个错误:Unknown"shuffle"filterin"partials/content.twig"atline30.如果我使用random():{%foriteminrandom(article.resources|slice(1))%}什么都没有返回。有什么想法吗?注意事项:顺便说一句,我不想​​使用PHP。 最佳答案 TwigArrayExtension已经有一个

php - Controller 中的 symfony2 @Template

我正在使用注释路由,这是我的Controller所具有的:/***@Route("/",name="_index")*@Template()*/我了解路线,但有人可以解释一下@Template()在那里做什么以及我如何使用它吗?我找不到任何关于此的文档。谢谢... 最佳答案 The@Templateannotationassociatesacontrollerwithatemplatename:更多信息在这里:http://symfony.com/doc/2.0/bundles/SensioFrameworkExtraBundle/

php - 在 Symfony 中激活 StringLoader Twig 扩展

我正在尝试激活TwigStringLoaderExtension在Symfony2.3项目中,但无法获得正确的yaml语法。这篇文章是指answerbyHeyflynn在处理完全相同问题但提供的解决方案(对我而言)不起作用的帖子上。在我的app/config/config.yml中写入以下行只会给我以下异常:#app/config/config.ymlacme.twig.extension.loader:class:Twig_Extension_StringLoadertags:-{name:'twig.extension'}给我这个:FileLoaderLoadException:C

php - 如何在 Twig View 中获取数组的键名

我在twig中编码以可视化我从php获得的值,我希望数组的键名显示在值上方。{%ifuser.address%}{%foraddressinuser.address%}{%forpartsinaddress%}{{parts}}{%endfor%}{%endfor%}{%endif%}在{%foraddressinuser.address%}下面的部分我想把({{address.key}}或真正的句子是必要的获取数组的键名)数组是这样的:-address:array:4[▼"Door"=>array:1[▼0=>"225"]"Street"=>array:1[▼0=>"Pinkystr

php - Symfony2 - 如何将嵌套记录和递归函数实现到实体字段或 Twig 布局中?

我对使用Symfony2中实体的嵌套记录做一个组合框有严重的疑问。我已经在http://gediminasm.org/article/tree-nestedset-behavior-extension-for-doctrine-2中阅读了Doctrine2的嵌套树扩展,它看起来很有趣,但它没有提到如何将这个嵌套树实现到表单中的实体字段中。另外,我阅读了更多关于PHP中的递归函数的内容,并且发现了一个有趣的博客,其中对其进行了分析,这是链接http://www.sitepoint.com/hierarchical-data-database/,它具体解释了这个递归函数:functiond

php - Symfony2 Twig 无限子深度

我有一个自连接表,其中每个文件夹都有一个父文件夹,而且这个文件夹的深度是无限的。一个文件夹可以有另一个文件夹作为父文件夹,没有深度限制。今天我的代码看起来像这样,我正在寻找一种方法来挖掘它需要的深度,而无需对每个步骤进行硬编码,是否有一种方法可以定义一个带有循环的twig函数,它会调用自己在循环中的每一轮?Noparent{%forfolderinfolders%}{{folder.name}}{%forfolderinfolder.children%}   {{folder.name}}{%endfor%}{%endfor%}

php - Symfony2 - 要查看 Twig 中的更改,每次都必须清除缓存

我现在只有这个问题。每次我对我的Twig进行更改时,我都必须cache:clear。以及如果代码中有问题,不会显示任何错误?我该怎么办?! 最佳答案 这个问题我遇到过很多次。如果您的网站被这么多用户访问并且您清除了缓存。我确定您的网站会关闭几分钟,直到生成新的缓存。所以清除生产服务器上的缓存不应该是一项常规事件。有几个解决方案或技巧可以解决这个问题:找出网站流量较低的时间。可能在晚上的某个时候,然后清除缓存。当你想清除缓存时,设置生产服务器的副本,然后计划将公共(public)域ip切换到新副本的时间,这样用户就不会面临停机时间,一

php - 在 Symfony/Twig 中完成渲染之前刷新输出

是否可以在渲染完成之前刷新输出缓冲区?我的观点是提高网站的感知性能。例如管理界面中有一个大表(如5000行)要呈现。我想告诉Twig/Symfony在之后刷新输出已呈现,因此浏览器可以开始下载样式/javascript,然后每500行刷新一次输出。 最佳答案 您要使用的是Twig{%flush%}命令相当于PHP函数flush().将它放在之后在您的模板中标记,以便将当前缓冲区发送到浏览器。每次您调用它时,它都会输出任何缓冲的输出,因此将它放在一个循环中就可以正常工作。有关详细信息,请参阅docs.

php - Twig (在 Symfony 中): access template parameters from twig extensions

我想从我的Twig扩展(过滤器、函数...)访问Twig模板参数而不显式传递它。我的所有twig扩展中始终需要一个“displayPreferences”变量,以便更改显示和转换值的方式。可以将此变量作为模板参数传递,并将其作为我运行的每个Twig过滤器/函数的参数传递,但这会使模板难以阅读。这样的东西会很棒:/***Twigfilter(renderadateusingtheuserdefinedformat)**@paramDate$date*/publicfunctionrenderUserDate($date){//Somehow,getatemplateparameter,w

php - Woocommerce Storefront template-tags.php 更改为 storefront_cart_link() 不可能

我使用的是WordPress4.3.1、Woocommerce2.4.7和主题店面1.5.1。我想更改标题中的“site-header-cart”,它显示购物车的当前价格以及购物车中的商品数量,仅显示商品数量:463,33 €7items应该是:7每当我对template-tags.php进行更改时,只会更改...正在显示。每当我尝试更改href中的某些内容时,未更改的原始内容就会显示出来:if(!function_exists('storefront_cart_link')){functionstorefront_cart_link(){?>cart->get_cart_u