by Stiod Desenvolvimento Web
Assine nosso RSS

Archive for the 'Rails' Category

Estava com um projeto em Rails, onde precisava de um gem em uma hospedagem na Locaweb, no meu caso o FasterCSV. Como precisamos de permissões de administrador para instalação, devemos fazer a instalação da seguinte forma:

Instalação fastercsv:
[code]
$ mkdir /home/usuario/gems
$ gem install fastercsv --instal-dir=/home/usuario/gems/
[/code]
* Não podemos esquecer de mudar o usuario para o nome do seu usuário logado.

A diferença em relação ao padrão seria o --install-dir para salvarmos o gem em um diretório onde temos permissões de escrita.

Depois na aplicação editamos o config/environment.rb da seguinte forma:
[code]
...
ENV['GEM_PATH'] = '/home/usuario/gems/'
# Uncomment below to force Rails into production mode when
# you don't control web/app server and can't set it the proper way
ENV['RAILS_ENV'] ||= 'production'
...
[/code]

A variável de ambiente GEM_PATH configura onde o Ruby/Rails deve procurar os gems.

É wilson! xD

Um post rápido, para algo que é útil em vários dos nossos projetos desenvolvidos:
As vezes precisamos gerar scripts para tratar conteudos antes de mandar o conteudos extensos para "povoar" o banco de dados de nossas aplicações rails, e estes não fazem parte do aplicação em si, não tendo acesso direto as funções e modelos do projeto. As vezes este script tem até que rodar de tempos em tempos, no crontab ou qualquer coisa do tipo, sendo assim necessário utilizar funções uteis e modelos de nossa aplicação a partir de nosso script.
Para isso devemos fazer o seguinte:

script.rb
[ruby]
ENV['RAILS_ENV'] = 'production' # Environment setado (development, test, ou production)
require '/caminho/da/aplicacao/rails/config/environment'

posts = Post.find(:all)

[/ruby]

É isso... ;)