मेरे पास एक खोज फ़ॉर्म है, जिसमें कई विकल्प हैं, अनुरोध प्राप्त करने के साथ एक मार्ग पर सबमिट किया गया है। यूआरएल इस तरह कुछ है:क्वेरी स्ट्रिंग से रिक्त मान पैराम को कैसे हटाएं
http://localhost:3000/restaurants/search?utf8=%E2%9C%93&city=&cuisine=&number_of_people=&query=hello
बहुत अधिक पैरा के साथ। मैं इसे साफ करने के लिए कुछ पैराम को हटाने की तरह कुछ साफ करना चाहता हूं।
कुछ इस तरह: (मूल रूप से सभी पैरामीटर जो खाली हैं को हटाने)
http://localhost:3000/restaurants/search?query=hello
यह कैसे करना है?
एक तरह से
CGI::parse("foo=bar&bar=foo&hello=hi")
का उपयोग कर किया जा सकता है आप में एक में पर
{"foo"=>["bar"], "hello"=>["hi"], "bar"=>["foo"]}
पहले रीडायरेक्ट उपयोगकर्ता देता कार्रवाई के बीच और उस में कार्रवाई की जांच जो पैरामीटर खाली कर रहे हैं और उन्हें हटाने और फिर बीच आखिर में खोज की वास्तविक कार्रवाई पर उसे पुनर्निर्देशित किया। लेकिन यह बहुत लंगड़ा लगता है। मैं इसे बेहतर तरीके से कैसे कर सकता हूं?
क्यों खाली मूल्यों समस्या कर रहे हैं? –
@SergioTulentsev यूआरएल को और अधिक साफ करने के लिए .. –
@SergioTulentsev इसका एक खोज फ़ॉर्म है। एक बार उपयोगकर्ता फॉर्म जमा करें। सब आता है। –