Voltar ao blog

Configurando Ruby on Rails com PostgreSQL

Configurando Ruby on Rails com PostgreSQL

Entre todos os motores de banco de dados disponíveis, PostgreSQL é um dos mais populares. É um sistema de banco de dados de código aberto bem conhecido por sua confiabilidade, recursos robustos e desempenho. Como o PostgreSQL é uma escolha popular, ele é suportado por quase todos os principais frameworks web. Semelhante aos seus concorrentes MySQL e SQLite, o PostgreSQL também tem seus pontos fortes e fracos.

Ruby on Rails é um framework web popular escrito em Ruby. É um framework agnóstico em relação ao banco de dados, o que significa que pode funcionar com uma grande variedade de bancos de dados. Por padrão, o Rails assume SQL para as funcionalidades do banco de dados. No entanto, ele também suporta a integração com o PostgreSQL.

Este tutorial irá guiá-lo através do processo de configuração do PostgreSQL para a sua aplicação Ruby on Rails.

Ruby on Rails e PostgreSQL

Tanto o PostgreSQL quanto o Ruby on Rails estão disponíveis em qualquer distribuição UNIX/Linux. Eles devem estar disponíveis nos servidores de pacotes padrão.

Um método alternativo é usar o RVM (Ruby Version Manager). É uma ferramenta dedicada para gerenciar instalações do Ruby on Rails. O benefício dessa abordagem é que o RVM criará uma instalação local do Ruby on Rails. Ele também pode gerenciar várias versões do Ruby e alternar facilmente entre elas. Aqui está um tutorial que detalha as etapas de Instalação do Ruby on Rails com RVM no Ubuntu.

Quanto ao PostgreSQL, dê uma olhada neste guia rápido sobre instalação e configuração do PostgreSQL no Ubuntu.

  • Instalação do RVM

O processo de instalação do RVM é bastante simples, graças ao script de instalação que o RVM oferece. O script foi projetado para detectar automaticamente o sistema Linux, depois baixar e instalar todos os pacotes necessários. Precisamos das chaves GPG do RVM para verificar os pacotes. Isso garante que os pacotes recebidos não sejam falsificados. Primeiro, adicione as chaves GPG do RVM:

gpg_recv_keys Ruby on Rails with PostgreSQL

Em seguida, execute o script de instalação do RVM:

install_rvm Ruby on Rails with PostgreSQL

Finalmente, verifique a instalação:

verify_install

  • Instalação do Rails

Agora podemos usar o RVM para instalar componentes adicionais. Instale o framework Rails usando o RVM:

gem_install_rails Ruby on Rails with PostgreSQL

  • Instalação do PostgreSQL

O próximo passo requer ter o PostgreSQL pré-instalado no sistema. Por padrão, a maneira mais fácil de instalar o PostgreSQL é usando o gerenciador de pacotes padrão. Ele está disponível para todas as principais distribuições Linux. Confira a página de download do PostgreSQL para todos os métodos de instalação disponíveis. No Ubuntu, os seguintes comandos irão configurar o repositório do PostgreSQL e instalá-lo imediatamente:

postgresql_get

add_postgresql_keys

apt_and_postgresql_update Ruby on Rails with PostgreSQL

To enable PostgreSQL support, we need to install the pg gem. Ela permite a interface com o PostgreSQL a partir do código Ruby:

gem_install_pg

  • Configuração do PostgreSQL

Após a instalação, configuraremos as ferramentas que precisaremos usar para os nossos projetos. Primeiro, mude para o usuário PostgreSQL:

Acesse o shell do PostgreSQL:

psql Ruby on Rails with PostgreSQL

No contexto do PostgreSQL, criaremos agora uma nova role (classicamente conhecida como usuário). O PostgreSQL tem seu próprio formato de roles e permissões. Não se esqueça de usar um nome de usuário apropriado e uma senha forte:

create_role

Creating a Rails App

Diga ao Rails para criar um novo aplicativo Rails configurado para usar o PostgreSQL como banco de dados:

rails_new_dummy_app

Isso criará um novo diretório com o nome de usuário do aplicativo. O Rails geralmente espera que o nome de usuário do banco de dados e o nome do aplicativo sejam os mesmos. O próximo passo é definir a configuração do banco de dados do Rails. O arquivo de configuração está localizado no seguinte local:

O arquivo database.yml contém os dados que descrevem o banco de dados apropriado para o ambiente Rails atual. Como o nome do arquivo sugere, ele usa YAML. O YAML é um padrão de serialização de dados amigável para humanos para todas as linguagens de programação.

Por padrão, o Rails espera bancos de dados diferentes para ambientes diferentes, por exemplo, development, test, e production. É útil em várias situações, por exemplo, o Rails esvaziará e recriará o banco de dados de test toda vez que um teste do Rails for executado.

Aqui está um exemplo de database.yml que contém os bancos de dados de development e test :

db_yaml

Agora é hora de aplicar as alterações. O seguinte comando preparará os bancos de dados necessários descritos em database.yml. Cada banco de dados terá seus próprios usuários e tabelas schema_migrations . A tabela é necessária para a migração de dados e esquema:

Esta etapa falhará se o arquivo de configuração do PostgreSQL pg_hba.conf contiver configurações incorretas. O arquivo está localizado no seguinte local:

A linha a seguir é o alvo. Em vez de peer, o método de autenticação deve ser md5:

Altere a linha:

pg_hba_conf

Para aplicar as alterações, você deve reiniciar o serviço do PostgreSQL:

Em seguida, execute novamente a configuração do banco de dados:

rake_db_setup

Executando o Rails

A execução do servidor Rails requer o seguinte componente adicional. Observe que, para isso, você precisa do Node.js instalado (com yarn):

webpacker_install

O aplicativo Rails agora deve estar pronto para ser lançado. Inicie o servidor Rails:

rails_server

O servidor deve estar acessível a partir da seguinte URL. Ele abrirá a página inicial do Rails:

Para tornar a página inicial mais interessante, crie um scaffold:

create_scaffold

rakedb_migrate

Finalmente, inicie o servidor e navegue até a URL novamente. Agora podemos gerenciar posts (criar, editar e excluir posts).

Considerações Finais

Esta é uma configuração básica do Ruby on Rails com PostgreSQL. Existe um guia oficial de introdução que ajudará você a utilizar melhor o Rails. O aplicativo de exemplo que criamos usa o PostgreSQL. Dessa forma, você pode criar qualquer aplicativo que use o PostgreSQL para suas funcionalidades.

Boa computação!

author

Pranay Kapgate

Autor · CloudSigma

Preslav Dobrev é um designer criativo na CloudSigma, focado na construção de uma identidade empresarial consistente por meio de canais de marketing tradicionais e inovadores. Ele é hábil em combinar a visão artística com o marketing estratégico para criar narrativas de marca impactantes.

Comentários

Nenhum comentário ainda. Seja o primeiro.