私はRubyで数週間を実装しています。そして私がしたいことは、次のビューでそれにアクセスしてデータを操作できるように、一時ファイルに入れたCSVファイルで読み込まれます。私は、インターネット上の例のようにすべてのものを実装しているが、私は常にエラーを取得:nilのために未定義のメソッド `original_filenameを」:NilClassなぜfile.original_filenameはRuby on Railsで動作しないのですか?
私の見解では私のコードは次のとおりです。私のコントローラで、その後
<% form_for :dump, :url=>{:controller=>"project_importer", :action=>"match"}, :html => { :multipart => true } do |f| -%>
<table">
<tr>
<td>
<label for="dump_file">
Select a CSV File :
</label>
</td>
<td >
<%= f.file_field :file -%>
</td>
</tr>
</table>
と私持っている:
file = params[:file]
@original_filename = file.original_filename
tmpfile = Tempfile.new("redmine_user_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
本当に私が間違っているか分からない、私は誰かが私を助けることを願っています。ファイルparamは空ではありません。
ありがとうございます!
サーバーログに入ってくるパラメータを入力することはできますか? – jaydel