我向Twig视图发送了一个学说结果。然后在Twig:
{% for key, value in result|array%}
{{key}} : {{value}}
数组过滤器是一个扩展,它使用$ result =(array)$ result将教条结果对象转换为数组;
并且... {{key}}正在渲染字段名称,但在完整的Bundle / Entity路径之前... 有没有摆脱这个前缀的想法?
提前致谢;)
答案 0 :(得分:0)
一种方法是使用replace
过滤器并将前缀替换为空,如果它是所有项目的公共前缀。
另一种方法是拆分已知的分隔符,例如对于类名称\
,然后使用last
过滤器获取最后一部分。
例如:
{{ key|split('\\')|last }}
答案 1 :(得分:0)
解决方案是从新的数组过滤器调用我的getFieldnames服务...然后替换数组中的键...也许它不是最好的选择...让我知道是否有更好的选择,我的意思更深......
public function arrayFilter($entity) {
$fieldnames = $this->container->getFieldnames($entity);
if (is_object($entity)) {
$response = (array) $entity;
$i = 0;
foreach ($response as $k => $v) {
unset($response[$k]);
$new_key = $fieldnames[$i];
$response[$new_key] = $v;
$i++;
}
return $response;
}
return null;
}