2011-04-11 16 views
6

के साथ हैंडल रेल मार्ग मैं एक जीपीएस-समन्वय पैरामीटर को संभालने के लिए अपने रेल ऐप में एक मार्ग बनाना चाहता हूं। इरादे दी गई स्थिति के पास रेस्तरां ढूंढना है।जीपीएस पैरामीटर

यह कर रहे थे मैंने शुरू किया:
match "/restaurants/near/:lat/:lng(/:range)", :to => "restaurants#near", :as => "near", :constraints => {:range => /\d+/}

ऐसा लगता है रूटर नाव मानकों के साथ समस्या है, /restaurants/near/53.0123/10.5678 की तरह एक यूआरएल मान्यता प्राप्त नहीं है। क्या आपके पास रेल यूआरएल में जीपीएस निर्देशांक को संभालने के लिए समाधान या सर्वोत्तम अभ्यास है?

धन्यवाद!

+0

आप के लिए यह रास्ता ठीक है ?: 'get'/restaurant/near '=>' रेस्टोरेंट # के पास ',: as =>: near_restaurants'। और इसका उपयोग करने के लिए: 'near_restaurants_path (: lat => 1.1,: lng => 2.2,: range => 10)'। उत्पन्न पथ '/ रेस्तरां/पास हो जाएगा? Lat = 1.1 और lng = 2.2 और range = 10'। सबसे महत्वपूर्ण हिस्सा यह नियंत्रक में समान है। – PeterWong

उत्तर

11

समस्या के कारण होता है क्योंकि रेल (.:format) तो प्रारूप के लिए खोज के लिए "डॉट्स" का उपयोग करने का प्रयास करें, यदि आप कुछ बाधाओं इसे ठीक करने के लिए जोड़ सकते हैं उदाहरण के लिए:

match "/restaurants/near/:lat/:lng(/:range)", :to => "restaurants#near", :as => "near", :constraints => {:lat => /\-?\d+(.\d+)?/, :lng => /\-?\d+(.\d+)?/ , :range => /\d+/} 
+0

/\ - * नकारात्मक निर्देशांक स्वीकार करने के लिए हैं – eveevans

+0

बहुत बहुत धन्यवाद! इससे मदद मिली! –

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