在Rails中执行Ruby函数

在我的索引视图中,我希望添加一个按钮来执行一个名为myFunction(myArg)的函数。 此函数位于behaviours/myRubyFile.rb 。 如何创建一个使用特定参数执行该function的按钮。

编辑:现在我收到一个新错误

The action 'my_func' could not be found for FunctionsController

但是在FunctionsController中定义了一个函数my_func

通常,您希望从该按钮向服务器发送请求,因此服务器运行myFunction。 为此,请按照以下步骤操作:

1 – 确保behavior / myRubyFile.rb定义了一个模块:

 module MyRubyModule def myFunction(arg) #Your logic here end end 

2 – 在routes.rb中定义路由:

 match '/my_func' => "functions#my_func" 

3 – 定义FunctionsController:

 class FunctionsController < ApplicationController include MyRubyModule def my_func arg = params[:arg] myFunction(arg) end end 

4 - 在视图中创建一个按钮,将请求发送到服务器:

 <%= button_to "Button", {:action => "my_func", :controller => "functions", :arg => "YOUR ARG HERE"} %> 

我没有测试过这段代码,但它应该可以解决问题。

编辑:添加:arg => "YOUR ARG HERE"到路线(Thnx nzifnab)