À l'aide de Twig pour générer du JSON
Je veux avoir une URL qui renvoie un simple objet JSON. Je suis en train d'utiliser Twig pour générer l'objet JSON:
{
"urls": [
{% for child in page.root %}
"{{ child.url }}"{% if not loop.last %},{% endif %}
{% endfor %}
]
}
Les retours chariot ne restera pas en place, et j'obtiens un résultat qui ressemble à ceci:
{'urls':['../ants/','../brick-report/','../the-pollution-intervention/','../barclay/','../broken-advertising/','../aldat-n-densom/','../thisisart/','../there-she-goes-again/']}
Jquery qui va pas analyser avec ajax ou getJSON méthodes. Il est totalement ignorant de ce JSON. Comment pourrais-je convaincre de Rameau à mettre des espaces à la place? J'ai regardé le manuel et il ne semble concerné avec n'insérez PAS d'espaces.
- Je suis personnellement je me demandais comment les guillemets simples sont négociés pour les guillemets dans votre code.. seul cité json propriétés ne sont pas valides. Aussi, les espaces n'est pas une exigence pour le json valide.
- Vous avez absolument raison. J'ai posé cette question trop tôt. JSON valide ne nécessite pas l'espace--il requiert que les apostrophes autour de le nom de la propriété de l'objet, dont je n'étais pas en train de faire.
Vous devez vous connecter pour publier un commentaire.
Qui fonctionne pour moi (template twig):
Et que:
sera de sortie:
dans FF console.
Brindille a un filtre pour ce.
json_encode, il utilise PHP json_encode fonction.
pour votre cas:
sortie
le code est testé et fonctionne. Pour plus d'informations, jetez un oeil à la Documentation de Twig pour json_encode.
Ne pas utiliser Twig pour générer votre réponse json.
Dans votre contrôleur, utilisez:
Exemple:
Si les Url sont générés à partir de Symfony2 itinéraires, vous pouvez utiliser:
C'est facile si vous étendez le rameau.
Tout d'abord, créez une classe qui contiendra l'extension:
Fondamentalement la $.getJson() méthode nécessite json mais ther est une chaîne de caractères
ainsi, vous pouvez utiliser $.get() pour obtenir la réponse et l'utilisation de l'analyseur de parser la chaîne JSON