2011-06-01 14 views
8

भूल जाता है मुझे सिम्फनी 2 में टहलने के साथ एक अजीब समस्या है। मैं निम्नलिखित सरणी का उपयोग कर रहा:ट्विग सरणी-कुंजी

[days] => Array 
    (
     [1] => Array 
      (
       [money] => 9 
      ) 

     [2] => Array 
      (
       [money] => 21 
      ) 

     [3] => Array 
      (
       [money] => 38 
      ) 

     [4] => Array 
      (
       [money] => 6 
      ) 

     [18] => Array 
      (
       [money] => 6 
      ) 

     [19] => Array 
      (
       [money] => 3 
      ) 

     [31] => Array 
      (
       [money] => 11 
      ) 

    ) 

इस परीक्षण करने के लिए मैं निम्नलिखित कोड

{% for key in days %} 
    {{ key }}<br> 
{% endfor %} 

थे, लेकिन उत्पादन निम्नलिखित

0 
1 
2 
3 
4 
5 
6 

से पता चलता है, लेकिन यह इस

की तरह दिखना चाहिए
1 
2 
3 
4 
18 
19 
31 

ली लगता है के twig नई अनुक्रमणिका के साथ एक नई सरणी बनाता है। सरणी से सही सूचकांक प्राप्त करने का कोई तरीका है?

var_dump($days) php में मैं सही सूचकांक देख सकता हूं, इसलिए "समस्या" जुड़वां से संबंधित है।

+0

'{{key.money}}'? – igorw

+0

हाय igorw, मुझे पैसे की कीमत नहीं चाहिए, मुझे मूल सरणी से कुंजी चाहिए। – mrohnstock

+1

'{% डीबग दिन%} 'आज़माएं, मैं शर्त लगा रहा हूं कि यह twig (' array_values', 'array_shift', आदि) में मान है। संभावना है कि कुछ सरणी reindexing है। क्या आपका पहला मूल्य यह दर्शाता है कि आप $ $ twig_env-> में रेंडर करते हैं ($ दिन); '? –

उत्तर

5

यह टहनी से संबंधित नहीं है, यह एम्बेडेड दस्तावेज़ों का उपयोग कर सिद्धांत-मोंगोड में एक ज्ञात अंतर है। सिद्धांत एम्बेडेड दस्तावेज़ों से कुंजी-मूल्यों को संभाल नहीं सकता है, यह 0 से शुरू होने वाली कुंजियों को फिर से व्यवस्थित करेगा और सही कुंजी-मानों को अनदेखा कर देगा। आपकी मदद के लिए वैसे भी धन्यवाद :)।

8

हो सकता है कि इस

http://www.twig-project.org/doc/templates.html

डिफ़ॉल्ट रूप से, दृश्य के मूल्यों पर एक पाश दोहराता। आप कुंजी फिल्टर का उपयोग करके कुंजी पर पुनरावृति कर सकते हैं:

<h1>Members</h1> 
<ul> 
    {% for key in users|keys %} 
    <li>{{ key }}</li> 
    {% endfor %} 
</ul> 
+0

आपके उत्तर के लिए धन्यवाद, कुंजी के साथ एक ही समस्या ... :( – mrohnstock

+0

@ मॉन्टी मैंने आपके सेटअप का अनुकरण करने की कोशिश की, और यह समाधान मेरे लिए काम किया (आकस्मिक रूप से, {{key}} बिल्कुल काम नहीं किया) ... क्या आप उस कोड को पोस्ट कर सकते हैं जिसका आप एक्शन में उपयोग कर रहे हैं? – Problematic

+0

हाय समस्याग्रस्त, मैंने गिटूब/ट्विग पर पूरा कोड पोस्ट किया: https://github.com/fabpot/Twig/issues/347। मैं दूसरा भूल गया एज़ैट द्वारा कल्पना के रूप में मूल्य, लेकिन यह भी काम नहीं करता है। – mrohnstock

15

भी आप इस कोशिश कर सकते हैं:

{% for key,value in users %} 
    {{ key }} 
{% endfor %} 

या शायद पाश के लिए में परिभाषित "लूप" वस्तु पर गौर

http://twig.sensiolabs.org/doc/tags/for.html

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