2012-05-09 9 views
5

में एक रूट को डिबग करना मुझे अपने सिम्फनी 2 रूटिंग वाईएमएल फ़ाइल में गायन मार्ग के साथ क्या गलत है, यह जानने में परेशानी हो रही है। हर दूसरा मार्ग ठीक काम कर रहा है (और मेरे पास पहले से ही दो दर्जन हैं), लेकिन यह एक मार्ग पहचानने से इंकार कर देता है। ,Symfony2

ProjectMainBundle_util_initUpload: 
    pattern: /util/initUpload 
    defaults: { _controller: ProjectMainBundle:Utilities:initUpload } 
    requirements: 
     _method: POST 

ProjectMainBundle_util_init: 
    pattern: /util/init 
    defaults: { _controller: ProjectMainBundle:Utilities:initUtilities } 
    requirements: 
     _method: POST 

ProjectMainBundle_util_download: 
    pattern: /util/download 
    defaults: { _controller: ProjectMainBundle:Utilities:download } 
    requirements: 
     _method: GET 

पहले मार्ग '/ util/initUpload', 'एक कोई मार्ग के लिए "पोस्ट/util/initUpload" त्रुटि पाई रिटर्न:

यहाँ मेरी YML फ़ाइल के प्रासंगिक क्लिप है। मैंने ब्लॉक को अलग-अलग स्थानों पर रखने की कोशिश की है (यहां तक ​​कि इसे ऊपर/'उपयोग/init' ऊपर ले जाया जा रहा है।) '/' इंडेक्स रूट मेरे routing.yml दस्तावेज़ के अंत में है, इसलिए यह समस्या नहीं होनी चाहिए। उपरोक्त मार्ग प्रारूप/उपयोग/* में एकमात्र हैं।

मार्ग एक फॉर्म और फ़ाइल अपलोड को संभालने में काम करता है, लेकिन मुझे लगता है कि यह महत्वपूर्ण नहीं है। मैंने POST आवश्यकता को हटा दिया है और सीधे ब्राउज़र में इसका परीक्षण किया है, और यह अभी भी मुझे एक ही त्रुटि दे रहा है .. ऊंटकेस एक समस्या नहीं होनी चाहिए। मेरे पास उस प्रारूप में अन्य मार्ग हैं जो ठीक काम करते हैं ...

मुझे और क्या याद आ रहा है? इसे डीबग करने के तरीके पर कोई सुझाव? मेरे अगले कदम YML फ़ाइल स्क्रैप और php प्रारूप का उपयोग कर के पुनर्लेखन के लिए, हालांकि मैं वास्तव में ऐसा नहीं करना चाहता है ..

उत्तर

20

अपने मार्गों के सभी सूचीबद्ध करने के लिए एक कमांड है:

app/console router:debug 

यदि आप वहां अपना मार्ग नहीं देखते हैं, तो पहले कैश साफ़ करने का प्रयास करें। यदि यह मदद नहीं करता है, तो रूट परिभाषा को हटाएं और इसे मैन्युअल रूप से फिर से टाइप करें - प्रतिलिपि/पेस्ट न करें।

पीएस इसका वाईएएमएल/PHP के साथ कुछ लेना देना नहीं है।

+6

"राउटर: डीबग" कमांड का उपयोग संस्करण 2.7 के बाद से हटा दिया गया है और 3.0 में हटा दिया जाएगा। इसके बजाए "डीबग: राउटर" का प्रयोग करें। – dotoree

+2

'डीबग: राउटर 'काम करता है। धन्यवाद @ डॉटोरिए। – mtchuente

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

  • कोई संबंधित समस्या नहीं^_^