我为什么每次都要预编译资产?

时间:2016-01-16 13:03:35

标签: ruby-on-rails asset-pipeline

每当我添加任何类型的资产(Javascript,图像或CSS文件,whaterver)时,首先通过将Rails.application.config.assets.precompile += %w( )添加到config/initializers/assets.rb来预编译会出错。我该怎么做才能解决这个问题?

1 个答案:

答案 0 :(得分:1)

当您明确引用资产管道中没有的资产时,会导致错误。具体做法是:

foreach($creds as $cred){
    echo $cred['tipo'];
    //if the next item has a 'tipo' key with a specific value
    if(current($creds['tipo'])!='4'){
        echo 'Total';
    }
}

问题是,您正在调用的文件,以便在资产管道的normal scope之外编译(将所有文件连接到#app/views/layouts/application.html.erb <%= stylesheet_link_tag :application, "file" %> / { {1}}:

application.js

上面创建了一个 application.css文件,其中放置了任何引用的文件(例如#app/assets/javascripts/application.js //= require jquery )。

这很有效,但是,如果您单独引用了application.js,那么如果Rails无法找到它,您将会遇到大量问题。因此,系统会提示您将文件添加到jquery

file.js

需要使用assets.rb引用明确引用的文件(您不需要引用图片等)。