2010-10-29 14 views
21

@post.body के साथ सामग्री को प्रदर्शित करने के लिए कैसे करें निम्नलिखित सामग्री (जिसे आरडीस्कैंट का उपयोग करके मार्कडाउन से परिवर्तित किया गया है)। मुझे इसे उपयोगकर्ता के लिए क्या प्रस्तुत करना चाहिए? यानी मैं मजबूत पाठ के रूप में यह प्रस्तुत करना चाहता हूँपाठ ...कच्चे एचटीएमएल

<p><strong>strong text</strong> </p> <p><em>emphasized text</em> </p> <blockquote> <p>this is a quote</p> </blockquote><p><img src="http://www.picturehouse.com/titles/images/rock.jpg" alt="alt text" title="" /> </p> 

पर बल दिया <%= @post.body => का उपयोग केवल पाठ ऊपर दिखाए गए के रूप में यह प्रदर्शित करेगा।

उत्तर

52

रेल 3 मानते हुए करते हैं, उदाहरण के लिए raw सहायक विधि का उपयोग

<%= raw(@post.body) %>

से बचने के लिए HTML आउटपुट सभी दृश्य टेम्पलेट्स में डिफ़ॉल्ट रूप से चालू है

+0

पुराना धागा, लेकिन आप टैग को प्रदर्शित करने के तरीके को कैसे सीमित कर सकते हैं? पूर्व ब्लॉक

5

क्या आप रेल 3 का उपयोग कर रहे हैं? यह स्वचालित रूप से <%= %> टैग की सभी सामग्री से बच निकलता है। यह बचने के लिए,

<%= raw(@post.body) %> 
5

मैं इसे ले आप कर रहे हैं (पिछले संस्करणों के विपरीत जहां h विधि का उपयोग करने को व्यक्तिगत रूप से तार से बचने के लिए। था) रेल 3 में? एक बड़ा परिवर्तन यह है कि प्रदर्शित पाठ डिफ़ॉल्ट रूप से कच्चे होने के लिए प्रयोग किया जाता था, और आपको इसे स्वयं को स्वच्छ करना था। अब यह दूसरी तरफ है। इसे इस तरह कॉल करें:

<%= raw(@post.body) %> 

और आप जो भी खोज रहे हैं उसे प्राप्त करेंगे।

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