Olá,
A Paz do Senhor primeiramente.
Escrevo este post por não encontrar um tutorial/artigo/blog que explique com detalhes este assunto.
Todos nós, desenvolvedores em ruby on Rails sabemos que existe GEM e PLUGIN, mas qual a diferença básica?
Gem – Quando instalada, fica disponível para qualquer projeto do ambiente onde está sendo executada as aplicações.
Plugin – Quando instalado, fica disponível somente para a aplicação em que foi instalado, por isso o comando deve ser executado dentro da pasta raiz do projeto.
Agora que já temos uma idéia melhor sobre o assunto, vamos instalar o brazilian-rails como gem. Execute o comando abaixo em qualquer lugar no terminal/console.
gem install brazilian-rails
Esse comando instala a gem e ficará disponível para todas as aplicações do ambiente/servidor em que estiver.
Para instalar como plugin, execute o comando abaixo, dentro da pasta da sua aplicação, na raiz:
ruby script/plugin install svn://rubyforge.org/var/svn/brazilian-rails
Uma outra coisa que dificilmente explicam é que quando você usa gem, você precisa ir no seu enviroment.rb e adicionar as linhas:
#brazilian-rails
require ‘brstring’
require ‘brdata’
require ‘brdinheiro’
require ‘brI18n’
… e outras que você precisar
Já quando você usa como plugin, você vai no enviroment e coloca as linhas:
Rails::Initializer.run do |config|
config.plugins = [:all]
config.i18n.default_locale = “pt-BR”
end
Ou seja, se usar gem você poe o require para sua aplicação saber que você está incluindo estes arquivos da gem e como plugin apenas diga que você quer usar todos os plugins da pasta de plugins.
Eu, Paulo, prefiro usar sempre como plugin, pois deixa a sua aplicação independente de servidor e não precisa ficar instalando gems.
Espero que tenham gostado