Я просто следовал Railscast 134, чтобы установить скрепку в мое приложение rails 3.0.1. Я сделал все необходимое, но когда я выбираю файл и нажимаю «отправить» в моей форме, он перезагружает страницу и говорит «файл не выбран»
Это в моей модели событий:
has_attached_file :photo, :styles => { :small => "150x150>" },
:url => "/assets/events/:id/:style/:basename.:extension",
:path => ":rails_root/public/assets/events/:id/:style/:basename.:extension"
validates_attachment_presence :photo
validates_attachment_size :photo, :less_than => 5.megabytes
validates_attachment_content_type :photo, :content_type => ['image/jpeg',
'image/png',
'image/jpg']
и моя форма:
<h1>Edit Event</h1>
<%= form_for @event, :html => { :multipart => true } do |f| %>
<div class="actions">
<%= f.label :name %><br />
<%= f.text_field :name %><br /><br />
<%= f.label :description %><br />
<%= f.text_field :description %><br /><br />
<%= f.label :event_date %><br />
<%= text_field_tag :event_date, @event.event_date.try(:strftime, "%m/%d/%Y at %I:%M%p"), :size=>30 %><br /><br />
<%= f.label :location %><br />
<%= f.text_field :location %><br /><br />
<%= f.file_field :photo %><br /><br />
<%= f.submit "Update" %>
</div>
<% end %>
не могу понять это. спасибо!
РЕДАКТИРОВАТЬ: код скрепки в моей модели события:
has_attached_file :photo, :styles => { :small => "150x150>" },
:url => "/assets/events/:id/:style/:basename.:extension",
:path => ":rails_root/public/assets/events/:id/:style/:basename.:extension"
validates_attachment_presence :photo
validates_attachment_size :photo, :less_than => 5.megabytes
validates_attachment_content_type :photo, :content_type => ['image/jpeg',
'image/png',
'image/jpg']
и некоторые отладочные данные:
{"utf8"=>"✓", "_method"=>"put", "authenticity_token"=>"hScfg9tx/4gBOHrtg+u8MB+QeUWS1sKtlcbnzK8YmRI=", "event"=>{"name"=>"Park", "description"=>"Swimming", "location"=>"Golden Gate Park", "photo"=>#<File:/var/folders/lm/5svv8x4s4d50yhw_h05qz7mm0000gn/T/RackMultipart20111023-6938-8xsv50>}, "event_date"=>"10/10/2011 at 02:00PM", "commit"=>"Update", "action"=>"update", "controller"=>"events", "id"=>"3"}