如何在rails中附加excel文件及其路径
我的观点是
<%= form_for @hotel, :url => { :action => "create_by_excel_sheet" } do |f| %>
<%= f.file_field :excel_sheet %>
<%= f.submit %>
<%end%>
当提交表单时,我想在create_by_excel_sheet操作中接收附加的excel文件
我试过
params["hotel"]["excel_sheet"].tempfile.path
然后它返回"/tmp/RackMultipart20130921-3387-1ffc97o"
而不是文件路径。
Ex: /file_path/file_name.file_extension
答案 0 :(得分:0)
然后返回“/ tmp / RackMultipart20130921-3387-1ffc97o”而不是文件路径。
是文件路径。临时文件驻留在/tmp
中,并具有大的pseduo随机名称。它们不需要文件扩展名。由您来阅读文件或将其复制到更永久的位置。
答案 1 :(得分:0)
安装google驱动器gem,roo依赖于google-drive中包含的某些宝石:
https://github.com/gimite/google-drive-ruby
在此之后我做了,
p Roo::Spreadsheet.open(params['file_to_upload'].path, extension: :xlsx)
---> {[1, 1]=>"qwrwe", [1, 2]=>"rqwerwqe", [1, 3]=>"we", [1, 4]=>"wer", [1, 5]=>"erqwe", [1, 6]=>"rwqerwer"