所以我想通过在Symfony的TWIG模板中输入一个URL来动态制作QR码。我安装了endroid / QrCode软件包并且看起来很好,但我不确定如何让TWIG创建QR代码图像!
所以从GitHub页面来看,TWIG的所有内容都是:
Twig扩展
该捆绑包提供了用于生成QR码URL的Twig扩展, 路径或数据URI。您可以使用其中任何一个的第二个参数 函数用于覆盖由bundle定义的任何默认值或通过set设置 你的配置。
<img src="{{ qrcode_path(message) }}" />
<img src="{{ qrcode_url(message, { writer: 'eps' }) }}" />
<img src="{{ qrcode_data_uri(message, { writer: 'svg', size: 150 }) }}" />
所以我想要进行测试,最简单的事情就是:
<img src="{{ qrcode_url('http://www.test.com') }}" />
然而,这会带来错误:
在渲染模板期间抛出了异常 (&#34;无法生成指定路由的URL &#34; endroid_qrcode_generate&#34;因为这样的路线不存在。&#34;)。
任何人都有这个工作的TWIG扩展名吗?
答案 0 :(得分:2)
确保包含捆绑包的路由配置,如documentation
中所述将以下部分添加到您的路由中,以便能够处理QR代码网址。如果您仅使用数据URI来显示图像,则可以跳过此步骤。
将路由配置添加到例如import R from 'lodash';
const getJsonData = (offset, limit) => (
R.slice(
R.map([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20], x => ({
title: `title ${x}`,
subtitle: 'description',
image_url: 'http://some-img-url.com',
date: 'date',
tag: 'tag',
places: [
{
places: 'places',
},
],
}))
, offset, limit + offset)
);
:
<?php
$filename = 'resources/img/college_logo/'.trim($fetch['college_name']).'.jpg';
if (file_exists(FCPATH.$filename)) {
?>
<img src="<?php echo base_url($filename); ?>">
<?php
} else {
?>
<img src="<?php echo base_url('resources/img/college_logo/logo_not.jpg'); ?>">
<?php
}
?>