Para un simple upload, es sencillo, creas un campo tipo
file en el formulario, y en el controlador
lo tomas y lo guardas en el directorio público.
En la vista:
Código ruby:
Ver original<%= form_for @user do |f| %>
<%= f.file_field :imagen %>
<% end %>
Y en el controlador:
Código ruby:
Ver originaluploaded = params[:user][:imagen]
File.open(Rails.root.join('public', 'uploads', uploaded.original_filename), 'wb') do |file|
file.write(uploaded.read)
end
Esto deberia funcionar (no lo eh testeado :P) pero con esto no llevarias un control ni registro de los archivos subidos. Aparte que no validas el tipo de archivo, ni puedes procesar las imagenes.
Para eso te recomiendo la gema
Paperclip, es bastante buena y facil de usar. Tiene opciones de validación de tipo de archivo, tamaño, y puedes procesar las imágenes.
Implementala y si te dá problemas nos avisas en este foro.
Un saludo ^^