我知道这里已经回答了类似的问题,但其中许多答案都是使用 gems 或直接修改 Bootstrap 的文件。虽然这些都是有效的配置,但我想增加我在这一领域的知识(Sprockets、Rails Pipeline、一般的前端开发)并想了解为什么这不起作用,潜在的问题是什么。
Ruby 2.0.0-p353、Rails 4.0.2、Bootstrap 3.0.3、Nginx 1.4.4、Passenger 4.0.33
我从他们的站点下载了最新的 Bootstrap zip,执行了找到的所有操作 here将这些文件直接包含到我的应用程序中,并且能够让字形在我的开发环境中完全按照预期显示。但是,当我部署到生产环境时,字形在 Chrome 中显示为正方形。我将 glyphicons 文件的各个文件扩展名添加到生产预编译中,并验证它们是否显示在我的 public/assets 文件夹中。 js/css 文件和 glyphicon 文件之间的唯一区别是 glyphicon 文件旁边没有 gzip 文件。
生产.rb:
config.assets.precompile = ['*.js', '*.css', '*.eot', '*.svg', '*.ttf', '*.woff']
我知道 Rails 在开发和生产中以不同方式加载 Assets ,但为什么它看不到或理解生产中的字形 Assets ?有没有办法用我当前的配置解决这个问题,或者我是否需要更改我包含这些 Assets 的方式以允许我修复这个错误?
此外,在开发和生产中,每次呈现使用字形图标的页面时,我都会遇到以下错误,但图标仍然显示。这有关系吗?
- ActionController::RoutingError(没有路由匹配 [GET] "/fonts/glyphicons-halflings-regular.woff")
- ActionController::RoutingError(没有路由匹配 [GET] "/fonts/glyphicons-halflings-regular.ttf")
- ActionController::RoutingError(没有路由匹配 [GET] "/fonts/glyphicons-halflings-regular.svg")
最佳答案
您应该从网站手动下载glyphicons fonts 并将其放入您的 app/assets/stylesheets/fonts 文件夹中。
bootstrap
gem
还没有解决一些问题
您可以引用以下链接
关于css - Bootstrap 3 Glyphicon 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21069303/