2011-07-04 11 views
5

मैं कोड की निम्न बिट का उपयोग करने के अपने पन्नेमैं इस रेल मार्ग/हेल्पर्स से कच्चे अनचाहे एचटीएमएल को कैसे आउटपुट कर सकता हूं?

%h2= link_to '{{ label }}', product_path('{{ id }}'.html_safe) 

पर एक लिंक उत्पन्न करने के लिए यह वास्तव में एक बड़ा एचटीएमएल ब्लॉक जो एक जावास्क्रिप्ट टेम्पलेट के रूप में काम करेगा का हिस्सा है कोशिश कर रहा हूँ, और मैं बाद में Underscore.js का उपयोग कर पार्स जाएगा {{ id }} और {{ label }} प्लेसहोल्डर भरने के लिए। तो मैं तरह मेरे HTML के लिए उत्पादन कुछ करने के लिए रेल चाहते हैं

/उत्पादों/{{id}}

हालांकि, यह रिक्त स्थान और brackeets बचने, और मुझे

<a href="/products/%7B%7B%20id%20%7D%7D">{{ label }}</a> 

दे रही है तो रहता है url_helper मेरी स्ट्रिंग से बच रहा है, भले ही मैं इसे नहीं चाहता। मैं इसे करने के लिए इसे कैसे मजबूर कर सकता हूं?

मैं कोशिश की है

%h2= link_to '{{ label }}', product_path('{{ id }}'.html_safe) 
%h2= link_to '{{ label }}', product_path(raw '{{ id }}') 
%h2= link_to '{{ label }}', raw(product_path('{{ id }}')) 

और

%h2=raw(link_to '{{ label }}', product_path('{{ id }}'.html_safe)) 

लेकिन उनमें से कोई भी काम

संपादित करें:

इस के साथ खेलने के लिए एक और तरीका है रेल कंसोल,

से है
include ActionController::UrlWriter 

ruby-1.9.2-p0 :010 > product_path '{{ id }}'.html_safe 
=> "/products/%7B%7B%20id%20%7D%7D" 

सराहना की कोई मदद ... धन्यवाद

धन्यवाद

उत्तर

6
CGI::unescape(product_path('{{ id }}') के बारे में

क्या? (require 'cgi' के साथ जो इसके साथ जाता है।)

मेरा मानना ​​है कि यह केवल रूबी 1.9.2 है लेकिन ऐसा लगता है कि आप इसका उपयोग कर रहे हैं।

+1

बीओ गोस !! बहुत अच्छे धन्यवाद – noli

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