【问题标题】:Rails 4 asset pipeline losing vendor assetsRails 4 资产管道丢失供应商资产
【发布时间】:2013-10-12 21:51:21
【问题描述】:

我似乎无法弄清楚如何让 sprockets 在vendor/assets 中找到资产。我一直在通过将我的所有资产添加到 app/assets 来解决这个问题,但它变得太混乱了。

我已阅读文档,并尝试将以下所有行添加到我的 application.rb 文件中。

config.assets.paths << "#{Rails.root}/vendor/assets/*"
config.assets.paths << "#{Rails.root}/vendor/assets/fonts"
config.assets.paths << "#{Rails.root}/vendor/assets/stylesheets"
config.assets.precompile << Proc.new { |path|
  if path =~ /\.(eot|svg|ttf|woff)\z/
    true
  end

它们在本地工作,但是当我将它们推送到服务器时,我的供应商资产都不在那里。我正在使用 capistrano 进行部署,并且我知道升级存在一些问题。这可能是问题的根源,但我按照文档进行了部署(几乎)一切正常。

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-4 capistrano asset-pipeline sprockets


    【解决方案1】:

    问题原来是我很愚蠢,而且很快就开始解决其他问题。我在兔子洞里跳得太远了,看不到正在发生的事情。我没有在正则表达式中包含otf 文件类型,也没有包含它。

    面部护理

    编辑:

    澄清一下:我要做的就是改变

    if path =~ /\.(eot|svg|ttf|woff)\z/
    

    if path =~ /\.(eot|svg|ttf|woff|otf)\z/
    

    【讨论】:

    • 您能否分享具体的解决方案,而不是针对新手的摘要? ^^
    • @gwho:添加到答案中的细节
    【解决方案2】:

    当您运行rake assets:precompile 时,您是否手动将环境设置为生产环境?

    命令应该是:

    RAILS_ENV=production rake assets:precompile

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-12-21
      • 2023-04-02
      • 2012-02-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-10
      相关资源
      最近更新 更多