是否可以从javascript中调用rails helper方法?

我的application.html.erb [查看文件]中有一个javascript代码块,它接收来自外部api的事件。 我想要做的就是当在javascript代码块中收到事件时,我需要在[application_helper.rb]中执行一个帮助方法。

我在这里经历了大部分的te栈,但找不到任何相关的答案。

javascript代码块如下所示:

var pusher = new Pusher('b00c9657a0a896f3ec26'); var channel = pusher.subscribe('NewOrders'); channel.bind('NewOrderArrived', function(data) { [ I NEED TO CALL THE RAILS HELPER METHOD HERE ] console.log("got u") }); 

不直接,没有。 正如Dave Newton在评论中所说,Ruby在服务器上执行,JS在客户端上执行。 你想要做的是这样的事情:

 var pusher = new Pusher('b00c9657a0a896f3ec26'); var channel = pusher.subscribe('NewOrders'); channel.bind('NewOrderArrived', function(data) { $.get('<%= url_for :some_controller_method_that_calls_helper %>', function(response){ // the response variable will contain the output of the controller method }); console.log("got u") });