Pav*_* K. 6 assets ruby-on-rails precompile
在我的rails 4项目css使用字体文件.所以他们需要另外预编译.
我通过在config/environments/production.rb中添加以下行来实现这一目标
# Add the fonts path
config.assets.paths << Rails.root.join('vendor', 'assets', 'fonts','fonts')
#
# # Precompile additional assets
config.assets.precompile += %w( *.svg *.eot *.woff *.ttf )
Run Code Online (Sandbox Code Playgroud)
并运行rake资产:在生产中预编译.
但结果如下:
I, [2013-10-10T19:27:51.931963 #16052] INFO -- : Writing /var/lib/openshift/521e19c85004460a8e000107/app-root/runtime/repo/public/assets/fonts/glyphicons-halflings-regular-ab2f6984951c07fd89e6afdefabd93c7.eot
I, [2013-10-10T19:27:51.940615 #16052] INFO -- : Writing /var/lib/openshift/521e19c85004460a8e000107/app-root/runtime/repo/public/assets/fonts/glyphicons-halflings-regular-24dfb40c91db789b8b8faba6886ac1ef.svg
I, [2013-10-10T19:27:51.950685 #16052] INFO -- : Writing /var/lib/openshift/521e19c85004460a8e000107/app-root/runtime/repo/public/assets/fonts/glyphicons-halflings-regular-4b2130768da98222338d1519f9179528.ttf
I, [2013-10-10T19:27:51.983230 #16052] INFO -- : Writing /var/lib/openshift/521e19c85004460a8e000107/app-root/runtime/repo/public/assets/fonts/glyphicons-halflings-regular-7a07f26f72466361ac9671de2d33fd1c.woff
Run Code Online (Sandbox Code Playgroud)
和css文件引用没有此md5指纹的字体文件.
我怎样才能预编译资产,以便在没有md5指纹的情况下生成资产?或者我应该在这种情况下将它们放到public/fonts /文件夹中?
按着这些次序
\n\napp/assets/fontsconfig/application.rb@font-face。您会在这里找到一些帮助application.css.erb并使用asset_path()helper 在 font-face 声明中实现字体路径。没有 SCSS 的示例:
\n\n@font-face {\n font-family: \'MyFont\';\n src:url(\'<%= asset_path("myfont.eot")%>\');\n src:url(\'<%= asset_path("myfont.eot?#iefix")%>\') format(\'embedded-opentype\'),\n url(\'<%= asset_path("myfont.svg#myfont")%>\') format(\'svg\'),\n url(\'<%= asset_path("myfont.woff")%>\') format(\'woff\'),\n url(\'<%= asset_path("myfont.ttf")%>\') format(\'truetype\');\n font-weight: normal;\n font-style: normal;\n}\nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
1082 次 |
| 最近记录: |