我使用typicons和Heroku的在我的Rails应用程序和它在本地生产,但没有工作,我没有得到在Heroku的任何路由错误,我不知道我错过了什么。 我在资产文件夹中的字体文件夹,我使用
config.assets.paths << Rails.root.join("app", "assets", "fonts")
里面的应用程序类在我config.application.rb文件。
里面的typicons.css.scss(这是在样式表文件夹中)我有
@font-face {
font-family: 'typicons';
src: font-url('typicons.eot');
src: font-url('typicons.eot?#iefix') format('embedded-opentype'),
font-url('typicons.woff') format('woff'),
font-url('typicons.ttf') format('truetype'),
font-url('typicons.svg#typicons') format('svg');
font-weight: normal;
font-style: normal;
}
我花了几个小时就同一问题。 以下是我工作:
在放置字体文件assets/fonts
里面的typicons.css.scss(这是在样式表文件夹中),我有:
/* @FONT-FACE loads font into browser */
@font-face {
font-family: 'typicons';
font-weight: normal;
font-style: normal;
src: font-url(asset-path('typicons.eot'));
src: font-url(asset-path('typicons.eot?#iefix')) format('embedded-opentype'),
font-url(asset-path('typicons.woff')) format('woff'),
font-url(asset-path('typicons.ttf')) format('truetype'),
font-url(asset-path('typicons.svg#typicons')) format('svg');
}
在application.rb中,我说:
config.assets.precompile << /\.(?:svg|eot|woff|ttf)$/
最后,我跑了如下承诺和推到之前的Heroku:
RAILS_ENV=production bundle exec rake assets:precompile
我没有添加以下行application.rb中:
config.assets.paths << Rails.root.join("app", "assets", "fonts")
如果您运行Rails.application.class.config.assets.paths
在Rails的控制台,你应该能够看到是否Rails正在捡资产/ fonts目录。 在Rails 4.2.5,被自动添加到资产路径的fonts目录。
希望这样可以节省别人一些时间。