Willian Fernandes

Desabilitando Asset Pipeline no Rails 3.1

Comente »

Se você é como eu e não gostou do assets pipeline que vem habilitado nativamente no rails 3.1, saiba que você pode desabilitá-lo. Para isso, basta editar o arquivo application.rb:

# Enable the asset pipeline
config.assets.enabled = false

Essa notícia não é nova, porém poucos sabem que ao desabilitar este recurso os arquivos controller_name.js e controller_name.css continuam sendo gerados no diretório app/assets/. Veja:

$ rails g controller users
  create  app/controllers/users_controller.rb
  invoke  erb
  create    app/views/users
  invoke  rspec
  create    spec/controllers/users_controller_spec.rb
  invoke  helper
  create    app/helpers/users_helper.rb
  invoke    rspec
  create      spec/helpers/users_helper_spec.rb
  invoke  assets
  invoke    js
  create      app/assets/javascripts/users.js
  invoke    css
  create      app/assets/stylesheets/users.css

Para evitar que isso aconteça basta fazer a configuração abaixo também no arquivo application.rb:

config.generators do |g|
  g.assets false
end

Com isso ao rodar o generator de controller teremos:

$ rails g controller users
  create  app/controllers/users_controller.rb
  invoke  erb
  create    app/views/users
  invoke  rspec
  create    spec/controllers/users_controller_spec.rb
  invoke  helper
  create    app/helpers/users_helper.rb
  invoke    rspec
  create      spec/helpers/users_helper_spec.rb

Fica então a dica.

3 comentários para "Desabilitando Asset Pipeline no Rails 3.1"

  1. # Alexandre de Oliveira disse:
    22/10/2011 às 19:16:12

    CoffeeScript revolucionou meu código. Javascript é tão feio que por mais organizado que esteja, parece estar sempre desorganizado. O Sass fez meu CSS ficar mais simples, muito melhor de trabalhar.

    Mas, cada um com sua opinião.

  2. 23/10/2011 às 08:51:07

    Alexandre,
    trabalho com JavaScript e CSS a muito tempo e não acho que meus códigos ficam feios e desorganizados.
    Mas tenho um projeto em que o desenvolvedor front-end gosta de SASS, então mesmo sem o asset-pipeline é possível utilizar SASS. Assim como é possível utilizar JS puro e CSS com asset-pipeline, porém sem algumas features.

    Tentei usar asset-pipeline em produção, com JS e SASS, me deu mais dor de cabeça do que benefícios ;)

  3. # Claudia Farias disse:
    25/11/2011 às 17:18:41

    Também utilizo javascript e css há muito tempo e não ainda não encontrei nenhuma vantagem em utilizar mais uma camada de programação nos meus códigos. Só aumenta a macarronada e me obriga a ter que aprender mais uma ferramenta dispensável.

    Muito bom esse artigo.

Deixe um comentário

*

(obrigatório)Não é aceito código HTML: adicione-o no pastie.org e poste apenas o link.