[英]Run ruby script in rails
我在ruby中创建了一个脚本,现在我需要在rails应用程序中运行它。 我有点失落,但我有一个控制器,并希望通过GET / service /:id返回此脚本的结果。 我怎样才能做到这一点?
通过评论,您似乎想要将其转换为可以从控制器调用的方法。
简单。
在您要调用的控制器的相应模型中定义方法(或者您希望定义方法的任何模型),然后从Controller调用它。
假设您有一个ScriptRunner模型,并且您想从某个控制器的show动作调用它。
在您的ScriptRunner模型中,只需执行
def runscript(id)
...
end
在你的控制器中,做
def show
ScriptRunner.runscript(params[:id])
@service = Service.find_by_id(params[:id])
end
..或者你想要它做什么。
Sergio Tulentsev方法是正确的,只需从中创建一个模型类并从控制器调用模型方法。
或者,这是错误和hacky你可以直接从控制器调用ruby脚本
def get
@results = system "ruby your_ruby_script.rb"
end
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.