2012-03-19 23 views
6

Diga en vendor/assets Tengo dos subdirectorios, /alpha y , cada uno con un archivo llamado temp.jpg. A mi entender, se realiza una solicitud GET para /assets/temp.jpg, y estoy bastante seguro de que se sirve la del directorio alfa. Pero, ¿cómo puedo distinguir entre los dos? Creo que se puede hacer con el ayudante asset_url pero no estoy muy seguro, si alguien puede aconsejar, sería genial.Rieles - canalización de activos - recurso de identificación por directorio

Respuesta

1

Del manual:


Puede ver la ruta de búsqueda mediante la inspección de Rails.application.config.assets.paths en la consola de Rails.

Se pueden agregar rutas adicionales (totalmente calificadas) a la tubería en config/application.rb. Por ejemplo:

config.assets.paths << Rails.root.join("app", "assets", "flash") 

Piñones también se verá a través de las rutas especificadas en config.assets.paths que incluye las rutas de aplicación estándar y cualquier trayectoria añadido por los motores de Rieles.

Las imágenes también pueden ser organizados en subdirectorios, si es necesario, y se puede acceder especificando el nombre del directorio en la etiqueta:

<%= image_tag "icons/rails.png" %> 

Si está utilizando la tubería de activos, estoy no estoy seguro de cuál de sus imágenes sería suministrada por un enlace que no especifica la url, si corresponde. Si se está suministrando uno, tendrá que ver con el orden en el que Sprockets lee recursivamente esos directorios. Si los lee en orden alfabético, se servirá la imagen "beta". O de lo contrario, será aleatorio, no estoy seguro de cómo Sprockets lee los directorios.

Va a ser mejor que ponga una ruta explícita allí. Si está haciendo una especie de prueba, como si quisiera que aparezcan las imágenes beta, recomendaría algún tipo de enfoque paramaterizado para que pueda pasar "alfa" o "beta" a su camino.

Cuestiones relacionadas