मैं रूबी ऑन रेल में एक बहुत ही साधारण ब्लॉग एप्लिकेशन के होम पेज पर हालिया टिप्पणियां प्रदर्शित कर रहा हूं। मैं टिप्पणी तालिका के 'बॉडी' कॉलम से प्रदर्शित वर्णों की संख्या को सीमित करना चाहता हूं। मुझे लगता है कि मैं <% = h comment.body%> के लिए कोड के अंत में कुछ जोड़ सकता हूं लेकिन मुझे नहीं पता कि यह अभी तक क्या होगा क्योंकि मैं रुबी और रेल दोनों के लिए नया हूं।अक्षरों/शब्दों को सीमित करने के लिए - रेल पर रूबी
<% Comment.find(:all, :order => 'created_at DESC', :limit => 5).each do |comment| -%>
<p>
<%=h comment.name %> commented on
<%= link_to h(comment.post.title), comment.post %><br/>
<%=h comment.body %>
<i> <%= time_ago_in_words(comment.created_at) %> ago</i>
</p>
<% end -%>
बस उत्सुक (नहीं एक रेल उपयोगकर्ता): क्या यह भी काम करेगा? <% = h comment.body [0, 80] + "..."%> – steenslag
यह बहुत कम है कि नीचे क्या छोटा है, लेकिन यह जानने के लिए लंबाई भी जांचता है कि '...' को जोड़ना है या नहीं अंत – Corey
बस उस ट्रंकेट को जोड़ना चाहता था मल्टी-बाइट सुरक्षित नहीं है (रूबी 1.8, रेल 2.3.5, रूबी 1.9 के बारे में निश्चित नहीं है)। यह निर्दिष्ट बाइट पर छंटनी करता है और यदि आपके पास यूनिकोड स्ट्रिंग है तो आउटपुट कम होगा (निर्दिष्ट लंबाई से कम अक्षर)। आप अंत में एक टूटे हुए चरित्र के साथ भी समाप्त हो सकते हैं। बेशक, इस बारे में चिंता करने की कोई बात नहीं है कि आप ASCII या किसी अन्य 8-बिट वर्ण एन्कोडिंग का उपयोग करते हैं। – Teoulas