我在rails上使用这个文件上传器进行ruby。我用数字上传一些文件进行统计分析。该文件的模型被称为filedb.In filedb.rb文件打开和数字分析(一些相关的东西等)。之后,我需要将结果保存到名为results的表中。Ruby on Rails,从另一个模型创建一个记录
会不会是聪明只是在filedb.rb写:
@cell=Results.new(:cell_name =>filenames, :icorrelation=>intensities)
@cell.save
或者,它是更好地使用results_controller创建一个表中的记录? 并为这样的事情: results_controller.rb:
def create
@result = Result.new(params[:result])
if @result.save
lalala
else
render :new
end
end
虽然我不知道如何传递参数:导致到控制器提前
编辑
感谢:
filedbs_controller.rb:
def analyse
(filedb.where(analyse:no)).perform_analysis
respond_to do |format|
format.html { redirect_to :back }
end
end
filedb.rb
def self.perform_analysis
list=Analysis.do_number_analyse
if list!=nil
results(list)
end
end
def self.results(list)
do somthing with list
cell=Results.new(:cell_name =>filenames, :icorrelation=>intensities)
cell.save
end
Analysis.do_number_analyse - 是另一种模式的方法,所有的计算完成
但它会是一个聪明的方式来做我想要的或控制器故事更好? – Tonja 2013-05-07 10:11:06
我认为你的方法如果完全没问题。 – Galen 2013-05-07 10:30:12
是的,我同意@Galen,你不必担心哪个更好。 – Lian 2013-05-07 10:33:15