在我的twig模板中有以下代码来操作数据库:
{%
$tablename = $app['config']->get('general/database/prefix') . 'entries';
$query = "UPDATE $tablename SET $views = ? WHERE id = ?";
$views = record.views + 1;
$stmt = $app['db']->prepare($query);
$stmt->bindValue(1, $views);
$stmt->bindValue(2, record.id);
$res = $stmt->execute();
%}
当我在浏览器中加载模板时,我得到以下错误:
Twig_Error_Syntax
Unexpected character "$" in "record.twig" at line 18.
为什么我得到这个错误??
你不能用Twig模板写PHP代码。{%…标记允许您执行Twig代码,而不是PHP代码。无论如何,你不应该从模板中访问数据库,这似乎是错误的。
如果你真的需要做这样的事情,你应该写一个树枝扩展和调用它从{%…%}标记。
如果你想更新数据库中的记录,你必须创建自己的扩展来处理小树枝标签来启动它。
可以在螺栓文档中获得入门技巧和信息:https://docs.bolt.cm/3.2/extensions/basics/creating