Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Ruby

Rails के `link_to` हेल्पर को मास्टर करना: उदाहरणों के साथ एक व्यापक गाइड

Rails link_to ऑप्शन्स और आर्गुमेंट्स

link_to के लिए पहला आर्गुमेंट लिंक पर टेक्स्ट है।

दूसरा आर्गुमेंट?

यह वह URL है जिससे आप लिंक कर रहे हैं।

यदि आप चाहें तो आप इसे हार्डकोड कर सकते हैं, लेकिन ज्यादातर समय आप एक Rails मॉडल, या एक _path मेथड का उपयोग करेंगे।

जब आप उचित कन्वेंशन का पालन करते हैं तो Rails चीजों का पता लगा लेगा।

उदाहरण के लिए:

 <%= link_to "Improve Your Ruby Skills", book_path(@book) %> 

या:

 <%= link_to "Improve Your Ruby Skills", @book %> 

आप कैसे जानते हैं कि किसका उपयोग करना है?

  • एकवचन रूप जब एक विशिष्ट संसाधन का जिक्र हो (book)
  • बहुवचन रूप जब एक संग्रह का जिक्र हो (books)

उदाहरण:

 # बहुवचन
<%= link_to "All Books", books_path %>
# एकवचन
<%= link_to "Edit Book", edit_book_path(@book) %> 

यह आपके रूट्स को देखने में भी मदद करता है (rake routes के साथ)।

पहले कॉलम में नाम होता है (जैसे edit_book) जिसका उपयोग आप अपने लिंक्स में _path जोड़कर कर सकते हैं।

पुष्टि के साथ डिलीट लिंक

दो उपयोगी ऑप्शन्स जिनका आप उपयोग कर सकते हैं:

  • confirm
  • disable_with

उदाहरण:

 <%= link_to "Delete Book", @book, method: "delete", { confirm: "Are you sure?", disable_with: "Processing..." } %> 

एक लिंक के लिए डिफ़ॉल्ट एक्शन एक GET अनुरोध है।

यदि आप "DELETE" एक्शन का उपयोग करना चाहते हैं तो आपको इसके बारे में विशिष्ट होने की आवश्यकता है।

लेकिन...

क्या होगा यदि आप पिछले पेज पर एक लिंक चाहते हैं?

इसे आज़माएं:

 <%= link_to "Back", :back %> 

कस्टम CSS क्लासेस और HTML एट्रिब्यूट्स का उपयोग कैसे करें

आप CSS का उपयोग करके अपने लिंक्स को अलग दिखा सकते हैं।

उदाहरण के लिए:

 <%= link_to "Get More Books", books_path, class: "index-link" %> 

यह मानते हुए कि आपके पास यह CSS है:

 .index-link { color: blue; padding: 10px; } 

यदि आपको अधिक HTML एट्रिब्यूट्स (जैसे "id") की आवश्यकता है तो आप उन्हें लिंक टेक्स्ट और लिंक URL के बाद जोड़ सकते हैं।

क्वेरी पैरामीटर्स और एंकर लिंक्स कैसे बनाएं

एक और विकल्प जो आपको उपयोगी लग सकता है वह है क्वेरी पैरामीटर्स और एंकर के साथ लिंक बनाने की क्षमता।

यह क्यों उपयोगी है?

क्योंकि आप इस अतिरिक्त डेटा को अपने कंट्रोलर से एक्सेस कर पाएंगे जब यूज़र लिंक पर क्लिक करता है।

आइए कुछ उदाहरण देखें!

यदि आप ऐसा URL बनाना चाहते हैं:

 "/search?q=all" 

तो आप ऐसा कर सकते हैं:

 <%= link_to "Search ALL", search_path(q: "all") %> 

और इस URL के लिए:

 "/books#programming" 

आप ऐसा कर सकते हैं:

 <%= link_to "Programming Books", books_path(anchor: "programming") %> 

URL हेल्पर्स (_path / _url) के साथ संयुक्त, link_to आपको वह सभी फ्लेक्सिबिलिटी देता है जिसकी आपको आवश्यकता है।

इमेजेज से लिंक करना

बहुत से लोग नहीं जानते कि link_to एक वैकल्पिक ब्लॉक लेता है।

यह अधिक कॉम्प्लेक्स परिदृश्यों को सक्षम बनाता है।

इमेज से लिंक करने जैसा:

 <%= link_to books_path do %>
  <%= image_tag "Book Collection" %>
<% end %> 

इस उदाहरण में, ब्लॉक की सामग्री लिंकिंग टेक्स्ट, इमेज या कोई अन्य HTML एलिमेंट बन जाती है जिसे आप क्लिक करने योग्य बनाना चाहते हैं।

सारांश

आपने Rails में link_to मेथड के बारे में सीखा!

यदि आपने इस आर्टिकल को उपयोगी पाया तो मेरी Ruby किताब की एक प्रति प्राप्त करें ताकि आप अपने Ruby कौशल को सुपर-चार्ज कर सकें और मेरे काम का समर्थन कर सकें।

पढ़ने के लिए धन्यवाद 🙂


  1. Linux Watch कमांड में मास्टरी: सिंटैक्स, विकल्प और व्यावहारिक उदाहरण Linux Watch कमांड में मास्टरी: सिंटैक्स, विकल्प और व्यावहारिक उदाहरण

    Linux में watch कमांड एक काम करता है – एक कमांड को दोहराता है और परिणाम को बार-बार आउटपुट करता है, जिससे आप परिवर्तनों को देख सकते हैं। यहाँ इसका उपयोग कैसे करें। watch कमांड सिंटैक्स watch कमांड का सिंटैक्स इस प्रकार है: watch OPTIONS COMMAND ध्यान दें कि: OPTIONS नीचे दी गई तालिका से विकल्पों की

  1. एक्सेल VBA में टेबल रेफरेंसिंग में महारत: 20 सिद्ध तकनीकें एक्सेल VBA में टेबल रेफरेंसिंग में महारत: 20 सिद्ध तकनीकें

    बड़े डेटासेट वाली एक्सेल वर्कबुक में, पूरे रेंज के बजाय उसके नाम से टेबल को संदर्भित करना सुविधाजनक हो सकता है। एक्सेल में VBA का उपयोग करना किसी भी ऑपरेशन को करने का सबसे तेज़, सबसे विश्वसनीय और सबसे कुशल तरीका है। यदि आप एक्सेल VBA के साथ टेबल को कैसे संदर्भित करें जानने के लिए विशेष तरकीबें ढूंढ

  1. Excel डेटाबेस फ़ंक्शंस में महारत हासिल करें: व्यावहारिक उदाहरणों के साथ चरण-दर-चरण मार्गदर्शिका Excel डेटाबेस फ़ंक्शंस में महारत हासिल करें: व्यावहारिक उदाहरणों के साथ चरण-दर-चरण मार्गदर्शिका

    यह लेख दिखाता है कि Excel में डेटाबेस फ़ंक्शंस का उपयोग कैसे करें। Excel में 12 डेटाबेस फ़ंक्शंस हैं। यह लेख एक-एक करके उन्हें लागू करने का तरीका दिखाता है। निम्नलिखित तस्वीर इस लेख के उद्देश्य पर प्रकाश डालती है। लेख के माध्यम से जल्दी से देखें ताकि बाकी का उपयोग करना सीख सकें। आप नीचे दिए गए डाउ