11

How can i see what type of file is comming? For example, csv or xls... Give code please... I get file so:

aut_name = uploaded_io.original_filename
      File.open(Rails.root.join('public', 'uploads_prices', uploaded_io.original_filename), 'wb') do |file|
        file.write(uploaded_io.read)
      end
      as_load(aut_name)

Maybe by MIMO, but how?

Valdis Azamaris
  • 1,433
  • 5
  • 22
  • 47

2 Answers2

29

uploaded_io.content_type contains the MIME type of file.

So:

uploaded_io.content_type == "text/csv"

Daniel Evans
  • 6,788
  • 1
  • 31
  • 39
4

Unfortunately, it (content_type method) is not going to work if a user changes file extension. I've tested that in rails console and the changing the file extension also changes "content_type" output.

Found this SO question quite helpful:

Determine file type in Ruby

Community
  • 1
  • 1
wondersz1
  • 757
  • 8
  • 15