/ / पढ़ें रूबे 4 पर रूबी पर AJAX के अनुरोध पर js.erb पर नियंत्रक चर - jquery, रूबी-ऑन-रेल, रूबी, AJAX

रेल पर 4 रूबी पर AJAX अनुरोध पर js.erb पर नियंत्रक चर पढ़ें - jquery, रूबी-ऑन-रेल, रूबी, AJAX

AJAX अनुरोध से प्रतिक्रिया करने में समस्या हो रही है। क्या करने की कोशिश कर रहा है js.erb फ़ाइल पर नियंत्रक चर का उपयोग करें।

मैंने इसके लिए तर्क को कम कर दिया

testcontroller.rb

def test
@test = "some value"
respond_to do |format|
format.js
end
end

new.html.erb

<%= button_tag "test button", type: "button", id: "testbutton" %>
$("#testbutton").on("click", function() {
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: "/ajax/test",
dataType: "script",
});
});

routes.rb

post "ajax/test" => "testcontroller#test"

test.js.erb

alert("<%= @test %>");

मुझे खाली अलर्ट मिलता है

यहां छवि विवरण दर्ज करें

मुझसे कहां गलती हो गई?


संपादित करें - हल किया गया

"परीक्षण" विधि नीचे थी (लेकिन अंदर नहीं, मैं इसे दोहराता हूं) नियंत्रक वर्ग के निजी तरीके। जब मैंने इसे ऊपर रखा, तो यह सामान्य काम कर गया।

वैसे भी, आप सभी को आपके समय के लिए धन्यवाद।

उत्तर:

जवाब के लिए 0 № 1

मुझे लगता है कि आपने जो कोड दिखाया है वह सही है। आपको अपने सर्वर को पुनरारंभ करने की आवश्यकता हो सकती है या आपके पास कुछ दोहराव हो सकता है। क्या आपके पास एक से अधिक हैं TestController?

इसके अलावा, post "ajax/test" => "testcontroller#test" होना चाहिए post "ajax/test" => "test_controller#test" इसका नामकरण होना चाहिए TestController.

इसके अलावा, जेएस को इंजेक्ट करने का एक बेहतर तरीका उपयोग करना है alert("<%= j @test.html_safe %>");