我只是在摆弄一些东西,碰巧在我的ruby on rails app上运行bundle install。我注意到bootstrap从3.1.1更新到3.2.0,现在当我去生成某些视图时,我收到了这个错误:
ActionController::RoutingError (No route matches [GET] "/fonts/bootstrap/glyphicons-halflings-regular.ttf"):
直到此宝石更新才发生。有什么建议?我已经尝试在Gemfile中明确使用3.1.1并再次运行bundle,但这没有帮助。它看起来就像一个简单的路由问题,但是为什么这只会在gem更新期间发生变化。
答案 0 :(得分:8)
我的问题在于我在application.css.scss文件中导入bootstrap的顺序。确保订单顺利:
@import "bootstrap-sprockets";
@import "bootstrap";
答案 1 :(得分:0)
对于其他无法得到答案的人,我手动更改了此文件:
/ home //。rvm / gems / ruby-2.1.1 / gems / bootstrap-sass-3.2.0.2 / assets / stylesheets / bootstrap / _glyphicons.scss并取出$ icon_path或其他内容并替换它用“../ assets / bootstrap /
此后修复了问题。
答案 2 :(得分:0)
我遇到了和你一样的问题。经过一些研究,这些是我发现的最重要的事情:
1)自bootstrap-sass版本3.2.0起,资产目录从供应商/资产移至资产/
来源:Issue with upgrade to bootstrap-sass 3.2.0
2)自定义程序中的字体文件可能已损坏,应直接从Bootstrap homepage下载 来源:Bootstrap 3 Glyphicons not working
正如你已经说过的那样;将版本更改回3.1.1.1应该做的伎俩。我通过以下方式卸载了gem:
gem uninstall bootstrap-sass
然后我更改了gemfile中定义的版本并用
重新安装gem install bootstrap-sass
bundle update
这可能有助于人们面对同样的问题。