2011-05-24 7 views
5

Cuando el usuario carga archivos. En Rails 3.0+, estos entrarían en público/cargas. En 3.1, ¿los archivos cargados deben ir a app/assets/uploads? ¿O aún en público/cargas?¿Dónde deberían almacenarse los archivos cargados en Rails 3.1?

No es realmente un problema en nuestro entorno, ya que estamos utilizando S3. Solo trato de entender la nueva estructura de directorios de Rails 3.1.

¿Cuáles son sus pensamientos?

Respuesta

7

el directorio público, Capistrano recomienda pública/sistema/

No se confunda por el directorio app/activos, por lo general es de css/js/CoffeeScript archivos, que este es el mayor cambio desde 3.0 a 3.1

3

Bueno, la respuesta es simple: sus usuarios solo tendrán acceso a su directorio /public.

Hay solo algunos trucos para obtener css y js pero tendrá que seguir con /public para las otras cosas.

En general, puse todas las cosas en /public/assets

0

la adición a apneadiving de respuesta:

si utiliza Carrierwave, los archivos temporales están en el directorio de su sistema/tmp y los archivos subidos son i n un subdirectorio debajo de $ RAILS_ROOT/public, p. $ RAILS_ROOT/public/uploads/TU-MODELO/...

En Rails 3.1 el directorio 'activos' es para los archivos JavaScript y CSS de manera que las ruedas dentadas pueden recogerlos allí y para que sean no puede acceder directamente a través del directorio "público" ...

see: assets/javascripts/application.js and assets/stylesheets/application.css files 
    see: http://railscasts.com/episodes/265-rails-3-1-overview 

el directorio app/activos es para archivos CoffeeScript (que tampoco está accesible al público, por lo que no es un lugar para poner los archivos subidos)

0

poner los archivos cargados en el El sistema de archivos solo funciona si tiene un servidor de archivos o un almacenamiento mapeado en red ... Por lo general solo pongo los archivos en la base de datos en sí.

Pero, como vrsmn dijo, no use activos para esto, la canalización de activos es para simplificar las imágenes de css/js/application.

Cuestiones relacionadas