I sent my original post to this group under the title "Is mime content type case sensitive". It's made it to page 3 and I think I've found a bug so I'm re-posting.
I have a very simple example that uses one of the attachment plugins to upload jpeg image files, creating thumbs on the way to storing all on the filesystem.
From the attachment_fu test:
mugshots_controller.rb has:
def index @mugshots = Mugshot.find(:all, :conditions => {:thumbnail => nil})
respond_to do |format| format.html # index.html.erb format.xml { render :xml => @mugshots } end end
views/mugshots/index.html.erb:
<h1>Most Wanted</h1> <% for mugshot in @mugshots -%> <%= link_to image_tag(mugshot.public_filename(:thumb)), mugshot.public_filename %> <% end -%> <p> <%= link_to('New shot', { :action => 'new' }) %> </p>
mugshot.rb:
class Mugshot < ActiveRecord::Base has_attachment :content_type => :image, :storage => :file_system, :size => 0..3.megabytes, :resize_to => '640x480>', :thumbnails => { :thumb => '100x100>' }
validates_as_attachment
end
..._create_mugshots.rb:
class CreateMugshots < ActiveRecord::Migration def self.up create_table :mugshots do |t| t.column :parent_id, :integer t.column :content_type, :string t.column :filename, :string t.column :thumbnail, :string t.column :size, :integer t.column :width, :integer t.column :height, :integer
t.timestamps end end
def self.down drop_table :mugshots end end
I added two images, "DSCN0925.jpg" and "DSCN0913.JPG" through the application. The unix file command for these images tells me:
DSCN0913.JPG: JPEG image data, EXIF standard 2.2 DSCN0925.jpg: JPEG image data, EXIF standard 2.2
And, using script/console, Mugshot.find(:all) gives:
Mugshot.find(:all)
=> [#<Mugshot id: 1, parent_id: nil, content_type: "image/jpeg", filename: "DSCN0925.jpg", thumbnail: nil, size: 818302, width: 640, height: 479, created_at: "2009-04-29 19:01:17", updated_at: "2009-04-29 19:01:17">, #<Mugshot id: 2, parent_id: 1, content_type: "image/jpeg", filename: "DSCN0925_thumb.jpg", thumbnail: "thumb", size: 75300, width: 100, height: 75, created_at: "2009-04-29 19:01:18", updated_at: "2009-04-29 19:01:18">, #<Mugshot id: 3, parent_id: nil, content_type: "image/jpeg", filename: "DSCN0913.JPG", thumbnail: nil, size: 833312, width: 640, height: 479, created_at: "2009-04-29 19:01:48", updated_at: "2009-04-29 19:01:48">, #<Mugshot id: 4, parent_id: 3, content_type: "image/jpeg", filename: "DSCN0913_thumb.JPG", thumbnail: "thumb", size: 162513, width: 100, height: 75, created_at: "2009-04-29 19:01:49", updated_at: "2009-04-29 19:01:49">]
NOTE: content_type for all four records is image/jpeg.
Observing the headers associated with a load of the view/mugshots/ index.html.erb view with Live HTTP gives: