5

.coffee स्क्रिप्ट के अंदर मानों को पारित करने का सबसे अच्छा तरीका क्या होगा? .erb को फ़ाइल का नाम बदलना मेरे ऐप को तोड़ता है तो विकल्प क्या हैं?एक .coffee जावास्क्रिप्ट फ़ाइल में रेल कोड/पास चर का उपयोग कैसे करें?

+0

संभवतः डुप्लिकेट [रेल: कॉफ़ीस्क्रिप्ट या जावास्क्रिप्ट एसेट फ़ाइल में एक्सेस कंट्रोलर इंस्टेंस वैरिएबल] (http://stackoverflow.com/questions/8513912/rails-access-controller-instance-variable-in-coffeescript-or-javascript -सेट-एफ) –

उत्तर

9

इस रेल गाइड की जांच करें। यह खंड: 2.3.3 JavaScript/CoffeeScript and ERB आप .coffee-script फ़ाइल में रेल कोड का उपयोग कर सकते हैं। यह अंतर्निहित सुविधा है।

2 Edit___

फ़ाइल संपत्ति पाइप लाइन में है तो आप कॉफी फ़ाइल के अंत में .erb एक्सटेंशन जोड़ने के लिए इतना है कि रेल टैग अन्यथा काम करता है अगर आप .erb एक्सटेंशन जोड़ने के लिए कोई जरूरत नहीं है की जरूरत है फ़ाइलों को फ़ोल्डर में चलाता है फ़ोल्डर रेल टैग वहां काम करता है।

+0

मुझे लगता है कि आपने उन दस्तावेज़ों से लिंक किया है जिन्हें आपको .coffee से .coffee.erb –

+0

से एक्सटेंशन बदलने की आवश्यकता है, संपादन भाग –

+0

फ़ाइल में 'erb' जोड़ना मेरे लिए काम किया !!! –

3

आप या तो (1) फ़ाइल को अपने ऐप/दृश्य निर्देशिका में ले जा सकते हैं (इसलिए यह संपत्ति पाइपलाइन में नहीं होगा), या (2) क्वेरी स्ट्रिंग के माध्यम से जानकारी पास करें।

(1) एप्लिकेशन/विचारों/उपयोगकर्ताओं/script.js.coffee.erb

var username = <%= @user.name %> 

(2) मैं उपयोग कर रहा हूँ this समारोह

<%= link_to "User", user_path(@user, :username => @user.name) %> 
... 
var username = getParameterByName('username') 

untested है, लेकिन यह सामान्य विचार है ।

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