2010-12-23 17 views
7

डॉक्स चारों ओर देख रहे हैं मैं इस बारे में जाने के लिए एक सही तरीका नहीं देख सकता। यहाँ अन-पुनर्संशोधित कोड का उपयोग कर एक उदाहरण है:रेल - सशर्त एचटीएमएल विशेषताओं

= link_to user.name, user, :meta => "#{user.public? ? '' : 'nofollow noindex'}" 

अब इस परिणाम का श्रेय मैं शर्त गुजर नहीं होने की स्थिति में खाली टैग की वजह से वैध xhmtl नहीं है किया जा रहा है किसी भी html के साथ एक ही हो सकता है।

<a href='/users/mark' meta=''>Mark</a> 

मैं विशेषता परिभाषा को सशर्त कैसे बना सकता हूं, न केवल यह मूल्य।

उत्तर

18

उपयोग nil कोई रिक्त स्ट्रिंग के बजाय:

= link_to user.name, user, :meta => user.public? ? nil : 'nofollow noindex'

4

इस सवाल का जवाब है, लेकिन मैं एक विशेष मामला है, जिसमें drasbo की जिस तरह से कार्य नहीं करेगा उल्लेख करना चाहते हैं।

आप विशेषता सशर्त की उपस्थिति बनाना चाहते हैं। input[type=checkbox] की चेक की गई विशेषता कहें!

जाँच की विशेषता की उपस्थिति फर्क नहीं पड़ता और उदासी ब्राउज़रों अपने मूल्य को नजरअंदाज करते हैं।

दुर्भाग्य से, Haml वाक्य रचना के साथ अपने उपलब्ध नहीं। ऐसा करने के लिए, आप मानक HTML टैग पर वापस आने की जरूरत है:

%form 
    <input type="checkbox" "#{@post.tags.include?("Special Blog")? "checked" : ""}" /> 
    %button 
    Click Me 
संबंधित मुद्दे