ここで起こっているとは思えない非常に単純な何かが間違っていると思います。ファイルをアップロードしている私のjqueryコードは次のとおりです。
import: function (e) {
e.preventDefault();
var formData = new FormData();
jQuery.each($('#import_excel_file')[0].files, function(i, file) {
formData.append('import_file', file, 'xls');
});
formData.append('fuel_type_id', $('#import_fuel_type').val());
this.shipOff(formData);
},
shipOff: function (formData) {
$.ajax({
type: 'POST',
url: App.Options.rootUrl + "/stations/stations/excel_import",
data: formData,
cache: false,
contentType: false,
processData: false,
success: function (data) {
console.log('successful upload', data);
}
});
}
次に、を呼び出すコントローラーで、次import = Excel.new(xls_file.tempfile.to_path.to_s)
のようなエラーが発生しますTypeError (/var/folders/rd/58f3hjw10lv09q_8hsl0l7zn1mn1rf/T/RackMultipart20130909-36782-r1bv5n is not an Excel file)
ここで何が欠けていますか?