2011-10-18 12 views
8

जब मैं सादे पीएचपी कर रहा था, मैं बस यह कर रहा था: अब टहनी के साथSymfony2 + टहनी, अनुवाद बदले में चर "एक संदेश एक साधारण पाठ होना चाहिए"

printf(_("Hello %s !"), $name); 

, मैं ट्रांस टैग का उपयोग करना चाहिए । तो मैं कॉपी/पेस्ट documentation example है, और यहाँ मेरा पूरा टेम्पलेट है:

{% extends 'MyAppBundle::layout.html.twig' %} 

{% block content %} 
    <h1> 
     {% trans %} 
      Hello {{ name }}! 
     {% endtrans %} 
    </h1> 
{% endblock %} 

क्यों Symfony लौट निम्नलिखित अपवाद?

एक संदेश में "MyAppBundle :: home.html.twig"

500 आंतरिक सर्वर त्रुटि एक साधारण पाठ होना चाहिए - Twig_Error_Syntax

उत्तर

11

अनुवाद के लिए सटीक वाक्य-विन्यास एक छोटे से अलग है Symfony2 यह स्टैंडअलोन Twig में है। आप here पाए गए, टिग टेम्पलेट्स में अनुवादों के लिए सिम्फनी 2 दस्तावेज देखना चाहते हैं। सही सिंटैक्स कुछ इस तरह दिखेगा: पिछले जवाब के साथ

{% trans %}Hello %name%!{% endtrans %} 
+3

हे धन्यवाद! मुझे यह वाक्यविन्यास भी मिला है: {{'welcome.message' | trans ({'% titre%': name})}} – FMaz008

+0

वही स्थिति स्टैंडअलोन ट्विग में है। यह काम करता है, धन्यवाद। – umpirsky

21

एक लापता सा है भाग उस संदेश की चर भाग के प्रतिस्थापन करने के लिए की जरूरत है "के साथ"।

{% trans with {'%name%':name} %}Hello %name%!{% endtrans %} 
+4

यह चयनित उत्तर होना चाहिए – Simon

+0

वर्तमान दस्तावेज़ों के मुताबिक 'साथ' भाग का उपयोग करने की कोई आवश्यकता नहीं है, http://symfony.com/doc/current/translation.html#twig-templates देखें – hchr

संबंधित मुद्दे