在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)