可能有人可以向我解释我做错了什么。
我从 riak bucket 得到响应,我在 action controller 中准备它并在 twig 中呈现响应。 但是我无法在 twig 中使用循环迭代响应。
当我在 Twig 上这样做时:
{%% for callback in callbacks %}
{{ dump(callback) }}
{% endfor %}
我明白了:
Doc {#410 ▼
#data: {#422 ▼
+"psStatus_i": 0
+"psUrl_s": ""
+"clickId_s": "1_3_4_f1a9bcf2faaa2ef67a39916ba06cbbb0"
+"id_s": "565f04da60030fa3048b4572"
}
#_yz_id:1*CallBackDataIn_all*all*1_3_4_f1a9bcf2faaa2ef67a39916ba06cbbb0*24"
}
但是当我想获得明确的一个字段时:
{{ callback.id_s }}
然后我明白了:
Method "id_s" for object "Basho\Riak\Search\Doc" does not exist
我尝试转换为数组 bvt 然后我得到数组到字符串异常。
任何想法,我做错了什么。
编辑: 这是在 php 中使用 var_dump() 输出的:
object(Basho\Riak\Search\Doc)[410] protected 'data' =>
object(stdClass)[422]
public 'psStatus_i' => int 0
public 'psUrl_s' => string '' (length=0)
public 'clickId_s' => string '1_3_4_f1a9bcf2faaa2ef67a39916ba06cbbb0' (length=38)
public 'id_s' => string '565f04da60030fa3048b4572' (length=24)
protected '_yz_id' => string '1*CallBackDataIn_all*all*1_3_4_f1a9bcf2faaa2ef67a39916ba06cbbb0*25' (length=66)
protected '_yz_rk' => string '1_3_4_f1a9bcf2faaa2ef67a39916ba06cbbb0' (length=38)
最佳答案
根据source code类的,您可以按如下方式访问值:
{%% for callback in callbacks %}
{{ callback.__get('id_s') }
{% endfor %}
关于Symfony2-Twig- 访问标准类对象数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34226645/