我试图使用RinRuby从rails调用一些R函数。我创建了一个方法,具有R脚本和相关变量。工作流程就像是,用户上传数据文件,应用程序尝试编写并在公用文件夹中保存数据文件的副本。然后提取所需数据,映射到R变量并传递给R解释器。 R返回将以图形的形式显示在视图中的结果。一切都很好。我可以看到R从日志中返回输出。但我无法在视图中显示结果。
我从create动作调用方法(具有R脚本)并将返回的输出保存在实例变量中。我无法弄清楚如何使用此实例变量,因为它不在任何视图关联的操作中。我甚至不能使用before_filter选项,因为我希望在new和create操作之后调用此方法。我不希望在数据库中保存与数据文件相关的任何内容,除了用户表单中的一些输入。
任何人都可以建议一种在视图中显示输出的方法。代码可在此处获得: https://github.com/kumarsaurabh20/PlotApp/blob/master/app/controllers/plots_controller.rb
我正在使用Ruby 1.8.7和rails 2.3.11。
答案 0 :(得分:0)
如果需要仅暴露于下一个动作,请使用闪光灯。
if @savedfile
self.dataExtract(name)
@result = self.calTheta(id, name)
logger.debug @result.to_s
format.html {
flash[:notice] = 'Calibration data file is successfully saved.'
flash[:result] = @result
redirect_to :controller => "plots", :action => "index"
}
format.xml { render :xml => @plot, :status => :created, :location => @plot }
else
...