私はRuby on Railsに実装していますが、最初のビューでファイルを取得し、それをパラメーターに入れてから、コントローラーに次のものを持っています:
def match
file = params[:file]
@original_filename = file.original_filename
tmpfile = Tempfile.new("redmine_project_importer")
if tmpfile
tmpfile.write(file.read)
tmpfile.close
tmpfilename = File.basename(tmpfile.path)
if !$tmpfiles
$tmpfiles = Hash.new
end
$tmpfiles[tmpfilename] = tmpfile
else
flash[:error] = "Cannot save import file."
return
end
session[:importer_tmpfile] = tmpfilename
sample_count = 5
i = 0
@samples = []
FasterCSV.new(params[:file]).each do |line|
@samples[i] = line
i += 1
if i > sample_count
break
end
end
2 番目のビューでは、最初の行の結果を表示したいだけです。
<ul>
<% @samples.each do |a| %>
<li>
<%= a %>
</li>
<% end %>
</ul>
しかし、常にこのビューに移動すると、システムは何も表示しませんが、コードは正しいと思います。私が間違っていることを知っている人はいますか?
ありがとう