Category Archives: Tutorial

Criando um CRUD com Angular 2 + Rails 5

post-rails5-angular2
Introdução 🙂

Os Apps profissionais seguem há algum tempo na direção de ter uma divisão entre o backend (API) e o front end (Cliente Web), recentemente foi lançado a versão 2 do Angular (que tem pouco a ver com a versão 1) e também a versão 5 do Rails (que tem muito a ver com a versão 4 🙂 ), nesse tutorial eu vou demonstrar como conectar essas duas tecnologias para criar um App incrível \o/.

Nós vamos criar um CRUD de uma pequena aplicação de FAQ, e para fazer isso mais rapidamente nós vamos usar uma ferramenta bem legal que chama Angular-CLI (command line interface), que vai nos permitir gerar o projeto Angular 2, os components e os services facilmente (similar aos generates do Rails).

O que vamos aprender?
  1. Como criar um CRUD em uma aplicação Rails 5
  2. Como criar um CRUD em uma aplicação Angular 2
  3. Como conectar o Rails 5 com o Angular 2

Continue reading

Backup automatizado do banco de dados da sua Aplicação

O que vamos Aprender?
  1. Como realizar o Backup do banco de dados da sua aplicação usando a gem Backup
  2. Como ser notificado via Slack quando o backup acontecer
  3. Como automatizar esse processo usando a Gem Whenever
Porque Aprender?

Ter backups do seu banco vai te manter protegido de possíveis falhas que possam ocasionar a perda dos dados do seu usuário e automatizar esse processo vai eliminar um trabalho manual que poderia te custar muito tempo
Continue reading

Fazendo upload de imagem e múltiplos anexos usando CarrierWave

carrierwave21
Introdução 🙂

É muito comum você precisar fazer o upload de fotos ou múltiplos anexos em suas aplicações Web e o Rails fornece Gems que facilitam muito esse processo.

O que vamos aprender?

Nesse tutorial nós vamos usar o CarrierWave + Bootstrap + Simple Form para criar uma página que servirá para fazer o Upload de uma foto e de múltiplos anexos, vamos aprender também como limitar o upload de arquivos baseado na extensão.
Continue reading

12 Gems que você precisa conhecer – Parte 3

principais gems rails

O primeiro Post do blog foi sobre uma lista de 12 Gems interessantes que todo desenvolvedor Rails deveria conhecer. Muitas pessoas gostaram da lista e me disseram que as ajudou no dia a dia de trabalho, então eu lancei a segunda lista e a mesma coisa aconteceu.
Sendo assim como agora já é uma tradição do OneBitCode, hoje eu estou trazendo a terceira lista de Gems que podem fazer a sua vida como desenvolvedor Ruby On Rails mais feliz \o/.
Desta vez eu abordei algumas Gems de segurança, outras de teste e algumas outras que facilitam o dia a dia de desenvolvimento.

Continue reading

Como gerenciar as permissões (autorização) no Rails usando o Devise + CanCanCan

O que vamos Aprender?

Como gerenciar as permissões de acesso no seu App Rails usando o Devise + CanCanCan.

Porque Aprender?

A maior parte dos sites tem diferentes níveis de permissão baseados no tipo de usuário (cliente, operador, admin e etc) usar o CanCanCan para implementar isto é uma das maneiras mais utilizadas (e confiáveis) de fazer isso no Ruby On Rails.
Continue reading

Como criar PDFs incríves usando Ruby + Prawn + Gruff

ruby on rails pdf
Introdução 🙂

Criar PDFs para exportar dados, gerar boletos e etc é uma tarefa comum em vários sistemas e é claro que o Ruby On Rails possui várias maneiras de resolver este problema. A minha preferida é utilizando a gem Prawn porque ela te permite realizar customizações complexas de uma maneira bem simples e intuitiva.

Continue reading

Como fazer pesquisas (inteligentes) usando Ruby On Rails + ElasticSearch

elastic search
Para que Serve? Atende a sua necessidade? 🙂

Muitos tipos de aplicativos precisam de um sistema de busca de resultados como por exemplo o Airbnb para encontrar casas, o Tinder para encontrar um pretendente, o Google para encontrar a página que você busca e etc.

Existem muitas maneiras de fazer esse tipo de busca dentro do Rails e o mais comum de se ver em Apps pequenos são pesquisas direto no banco de dados usando “where” (ou “query sql”). Esse método funciona, mas tem um baixo desempenho quando você precisa fazer dezenas (centenas ou milhares) de pesquisas por minuto e ele também precisa de muitas adaptações para remover acentos, aceitar palavras parecidas, etc.

Continue reading

Criando um agregador de notícias (Com agendamento de eventos – Whenever)

whenever-01

Um agregador de notícias é um site que reúne notícias de vários outros sites, no nosso caso nós vamos “baixar” as noticias do Google News e exibí-las.
Baixar o Html de um site e parsear as informações é um processo um pouco demorado e fazer isso toda vez que um usuário quiser ver as notícias é um problema por aumentar o tempo de carregamento da página e por nos obrigar a fazer uma chamada ao Google News a cada requisição, então nós vamos usar uma Gem que agenda eventos de tempos em tempos para “Baixar” as noticias de N em N minutos ao invés de fazer isso a cada requisição.
Continue reading

Como fazer o deploy e rodar os testes automaticamente usando o Codeship

img-post-codeship-01
Para que serve? Se encaixa na sua necessidade?

Se você precisa constantemente fazer deploy da sua aplicação de maneira segura (rodando os testes antes) então o Codeship pode ser o caminho para você. Ele detecta quando você faz um git push para a branch de sua escolha, roda os testes que você deixou pré definidos na plataforma dele e se os testes passarem ele faz o deploy para o servidor de sua preferência como por exemplo Aws, Heroku ou algum servidor particular via capistrano ou script personalizado. Sim é bem legal e tem um plano free!
Continue reading