Rails: cómo vincular a activos fuera del directorio de aplicaciones
-
27-10-2019 - |
Pregunta
Soy nuevo en Rails. Instalé el marco front-end de Zurb Foundation como se describe aquí: http://www.zurb.com/article/814/yetify-your-rils-new-foundation-gem-and-
Cuando abro App/Assets/Stylesheets/Application.css, encuentro este código generado automáticamente:
/*
* This is a manifest file that'll automatically include all the stylesheets available in this directory
* and any sub-directories. You're free to add application-wide styles to this file and they'll appear at
* the top of the compiled file, but it's generally better to create a new file per style scope.
*= require_self
*= require foundation
*= require_tree .
*/
Sin embargo, esta línea en mi opinión
<%= stylesheet_link_tag "application" %>
no carga el archivo zurb_foundation/app/assets/stylesheets/fundación/index.css que creé:
couldn't find file 'foundation'
(in /Users/migu/railsapps/maneki1/app/assets/stylesheets/application.css:6)
¿Cómo puedo hacer que cargue el archivo y todos los archivos CSS que pongo en Zurb_foundation/App/Assets/Stylesheets/Foundation/? Gracias...
Solución
Deberá reiniciar el servidor web antes de que Rails recoja los nuevos activos de la gema de Zurb-fundation. Una vez reiniciado, debería funcionar.
Además, puede verificar que los activos de fundamento de Zurb se encuentren correctamente desde la consola Rails. En el símbolo del sistema, ingrese "Rails C" y luego "Rails.application.config.assets.paths" (ambos comandos menos las cotizaciones). Deberías ver algo como:
=> ["/Users/MYUSER/appPath/app/assets/images", "/Users/MYUSER/appPath/app/assets/javascripts", "/Users/MYUSER/appPath/app/assets/stylesheets", "/Users/MYUSER/appPath/vendor/assets/stylesheets", "/Users/MYUSER/.rvm/gems/ruby-1.9.3-p0/gems/jquery-rails-1.0.19/vendor/assets/javascripts", "/Users/MYUSER/.rvm/gems/ruby-1.9.3-p0/gems/zurb-foundation-2.1.0/vendor/assets/images", "/Users/MYUSER/.rvm/gems/ruby-1.9.3-p0/gems/zurb-foundation-2.1.0/vendor/assets/javascripts", "/Users/MYUSER/.rvm/gems/ruby-1.9.3-p0/gems/zurb-foundation-2.1.0/vendor/assets/stylesheets"]
Tenga en cuenta que es posible que deba hacer un trabajo adicional para implementar los activos en la producción.
Otros consejos
Así es como resuelvo un problema similar basado en este hilo https://github.com/zurb/foundation/issues/834Gema de riel de brújula agregada en Gemfile:
group :assets do
gem 'compass-rails'
Correr:
bundle install
No olvides reiniciar el servidor web y la magia sucederá.
Puede agregar esta directiva a su application.css
expediente:
*= require_directory ./foundation
O puedes usar el foundation-rails
joya.