Posts Tagged ‘irb’

Ruby on Rails configurando ambiente de desenvolvimento no Linux

Postado em 25 jun 2009
Categoria(s) Ruby on Rails

Nesse post vou mostrar como configurar um ambiente de desenvolvimento em Ruby on Rails no Linux.

Vamos lá!

Atualizando os pacotes do Linux:

sudo apt-get update

Instalando Ruby on Rails:

1
2
3
4
5
6
7
8
9
10
sudo apt-get install ruby irb rdoc ruby1.8-dev libopenssl-ruby imagemagick curl
wget http://rubyforge.org/frs/download.php/57643/rubygems-1.3.4.tgz
tar xzvf rubygems-1.3.4.tgz
cd rubygems-1.3.4
sudo ruby setup.rb
cd /usr/bin
sudo ln -s gem1.8 gem
sudo gem update --system
sudo apt-get install build-essential
sudo gem install rails passenger mongrel capistrano

Instalando Apache com PHP e Passenger/Modrails:

O Passenger/Modrails permite rodar aplicações Ruby on Rails no Apache.
Nessa etapa nós também iremos instalar o PHP, vamos precisar dele para o phpMyAdmin.

1
2
sudo apt-get install apache2 php5 libapache2-mod-php5 apache2-prefork-dev libapr1-dev
sudo passenger-install-apache2-module

Agora nós precisamos configurar o Apache para carregar o módulo do Passenger:

sudo gedit /etc/apache2/mods-enabled/passenger.load

Adicione as seguintes linhas no arquivo em branco:

LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-2.2.4/ext/apache2/mod_passenger.so
PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-2.2.4
PassengerRuby /usr/bin/ruby1.8
RailsEnv development

Salve o arquivo e feche o gedit.

Reinicie o Apache para carregar o Passenger:

sudo /etc/init.d/apache2 restart

Instalando o MySQL:

1
2
sudo apt-get install mysql-server libmysql-ruby php5-mysql
sudo apt-get install phpmyadmin

Configurando acesso a sua aplicação Ruby on Rails:

Digamos que você tenha o código da sua aplicação Ruby on Rails no diretório:

/home/patrick/projetos/minha_aplicacao

Vamos configurar para que quando você digitar no navegador http://minha_aplicacao você veja a sua aplicação em ambiente de desenvolvimento e possa interagir com ela.

Para isso, siga os passos abaixo:

cd /etc/apache2/sites-available/

Vamos criar um novo host novo virtual host no Apache:

sudo gedit minha_aplicacao

No arquivo em branco adicione:

<VirtualHost *:80>
ServerName minha_aplicacao
DocumentRoot /home/patrick/projetos/minha_aplicacao/public/
</VirtualHost>

Salve e feche o gedit.

Vamos deixar esse virtual host disponível:

1
2
cd /etc/apache2/sites-enabled/
sudo ln -s ../sites-available/minha_aplicacao 001-minha_aplicacao

Agora vamos configurar para que quando você digitar no navegador http://minha_aplicacao o sistema operacional procure localmente ao invés de buscar na internet:

sudo gedit /etc/hosts

Nesse arquivo adicione a linha:

127.0.0.1	minha_aplicacao

Logo abaixo da linha que começa com 127.0.1.1…
Salve e feche o gedit.

Reinicie o Apache para carregar esse novo virtual host:

sudo /etc/init.d/apache2 restart

Abra o navegador:

Digite no browser http://minha_aplicacao e veja ela rodando.

Se você quiser usar o Vim como IDE de desenvolvimento Ruby on Rails leia esse post: http://blog.patrickespake.com/2009/04/21/usando-o-vim-para-programar-em-ruby-on-rails/.

Pronto!

Se você gostou desse texto e acha que ajudou você, me recomende: Recommend Me.

  • Share/Bookmark

Ruby on Rails gerar intervalo entre duas datas

Postado em 29 jan 2009
Categoria(s) Ruby on Rails

Hoje eu precisei gerar um intervalo de datas, entre um data inicial e uma data final. Fiquei simplesmente impressionado como é fácil fazer isso no Ruby.

Eu queria gerar todas as datas entre ’2009-01-01′ e ’2009-01-20′, eu abri o IRB e fui aos testes, não é que deu certo de primeira:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
irb(main):001:0> range = '2009-01-01'..'2009-01-20'
=> "2009-01-01".."2009-01-20"
irb(main):002:0> range.each { |v| puts v }
2009-01-01
2009-01-02
2009-01-03
2009-01-04
2009-01-05
2009-01-06
2009-01-07
2009-01-08
2009-01-09
2009-01-10
2009-01-11
2009-01-12
2009-01-13
2009-01-14
2009-01-15
2009-01-16
2009-01-17
2009-01-18
2009-01-19
2009-01-20
=> "2009-01-01".."2009-01-20"
irb(main):003:0>

Resumindo:

Mando gerar um range:

1
range = '2009-01-01'..'2009-01-20'

No exemplo acima eu usei .. (dois pontos) isso faz com que a data final ’2009-01-20′ seja incluída, caso você não queira incluir a data final use … (três pontos).

Mando imprimir o range:

1
range.each { |d| puts d }

Como eu vivi tanto tempo sem conhecer o Ruby. ;-)

Se você gostou desse texto e acha que ajudou você, me recomende: Recommend Me.

  • Share/Bookmark

which ruby

Postado em 16 nov 2008
Categoria(s) Ruby

O comando which ruby mostra em qual diretório o Ruby está instalado.

No meu caso ele retorna o seguinte:

1
2
patrick@espake:~/projetos/algoritmos$ which ruby
/usr/local/bin/ruby

Se você gostou desse texto e acha que ajudou você, me recomende: Recommend Me.

  • Share/Bookmark

Ruby variáveis e constantes

Postado em 16 nov 2008
Categoria(s) Ruby

Em Ruby as variáveis sempre começam com letra minúscula e as constantes começam com letras maiúsculas.

Definindo uma variável:

1
nome = "Patrick Espake"

Definindo uma constante:

1
Chave = "a34fdkc090a"

Se você tentar alterar o valor de uma constante o Ruby irá dar um warning (“warning: already initialized constant Chave”).

Mesmo dando o warning o Ruby irá permitir a alteração do valor da constante.

Se você gostou desse texto e acha que ajudou você, me recomende: Recommend Me.

  • Share/Bookmark

Ruby verificando se um objeto é de uma determinada classe

Postado em 16 nov 2008
Categoria(s) Ruby

No Ruby existe o método is_a para testar se um objeto é de uma determinada classe. No Ruby tudo é objeto.

Digamos que você queira descobrir se um número é da classe Integer, Float ou String. Você pode testar isso da seguinte forma abra o irb no terminal:

1
2
3
4
5
6
irb(main):001:0> 15.is_a?(Integer)
=> true
irb(main):002:0> 15.is_a?(Float)
=> false
irb(main):003:0> 15.is_a?(String)
=> false

O método is_a retorna true ou false.

Se você gostou desse texto e acha que ajudou você, me recomende: Recommend Me.

  • Share/Bookmark