As gemas que fornecem ativos devem estar no Gemfile

Para que um ativo (por exemplo, um arquivo Javascript) fornecido por uma gema esteja disponível para compilação de ativos, a gema deve estar listada no Gemfile, e não uma dependência de outra gema. Apenas as gemas listadas no Gemfile têm seus caminhos de ativos incluídos em Rails :: Application.config.assets.paths. Aqui está um exemplo inventado:

O melhor no editor lugar tem jquery-rails como uma dependência. Se o melhor no lugar é no Gemfile, mas jquery-rails não , uma linha como esta

//= require jquery_ujs

… irá gerar um erro “arquivo não encontrado” quando a tarefa assets: pré-compilar for executada. Isso ocorre porque apenas as gemas no Gemfile têm seus caminhos de ativos adicionados ao caminho de pesquisa de Sprockets. (Obviamente, se você estiver instalando melhor no local, é extremamente improvável que você ainda não tenha jquery-rails em seu Gemfile. É por isso que este é um exemplo artificial.)