從我控制我傳遞一個陣列實體叫Tag
到樹枝文件是這樣的:嫩枝json_encode與實體對象和集合(Symfony3)
return $this->render('tags/list.html.twig', array(
'tags' => $tags,
));
然後,我顯示HTML與枝條每個標籤for
。每個Tag
都有一個實體Texts
(以多種語言)的集合。我想將文本集合傳遞給JS來使用jQuery進行一些處理。
{% for tag in tags %}
{% if tag.texts|default %}
<div data-tag-texts="{{ tag.texts|json_encode }}">...</div>
{% endif %}
...
{% endfor %}
但在JS返回一個空對象:Object {}
而我收藏的文本不爲空。通常,文本是對象的對象。
我嘗試了很多東西,但結果相同:
{{ tag.texts|json_encode }}
{{ tag.texts|json_encode(constant('JSON_PRETTY_PRINT'))|raw }}
我想瀏覽文本,以顯示在語言選項卡每個人。所有這些都在Boostrap Modal中。所以,我必須在JavaScript中獲取文本。
感謝您的幫助。
您可以實現[\ JsonSerializable](http://php.net/manual/en/class.jsonserializable.php)接口到您的對象或使用[JMSSerializerBundle](https://github.com/schmittjoh/JMSSerializerBundle) – Matteo
我想測試[Symfony串行器組件](http://symfony.com/doc/current/components/serializer.html) – Felurian
hi @Felurian很好的選擇! – Matteo