Este projeto foi desenvolvido utilizando Ruby on Rails 8 com PostgreSQL como banco de dados. Os testes foram realizados utilizando Postman.
Antes de começar, certifique-se de ter os seguintes requisitos instalados:
- Ruby (versão recomendada: 3.2+)
- Ruby on Rails (versão recomendada: 8.0+)
- Bundler
- PostgreSQL
- Postman (para testes de API)
Caso queira criar um projeto do zero com a mesma estrutura, siga estes passos:
-
Instale a versão correta do Rails:
gem install rails -v 8.0.0
-
Crie um novo projeto:
rails new nome_do_projeto -d postgresql
-
Entre na pasta do projeto:
cd nome_do_projeto -
Instale as dependências:
bundle install
-
Crie um arquivo
.envna raiz do projeto e adicione as credenciais do banco de dados:DATABASE_HOST=localhost DATABASE_NAME=tv_subscription_development DATABASE_USERNAME= SEU USER POSTGREE DATABASE_PASSWORD= SUA SENHA POSTGREE DATABASE_PORT=5432
-
Atualize o arquivo
config/database.ymlpara utilizar as variáveis do.env:default: &default adapter: postgresql encoding: unicode host: <%= ENV['DATABASE_HOST'] %> username: <%= ENV['DATABASE_USERNAME'] %> password: <%= ENV['DATABASE_PASSWORD'] %> pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> development: <<: *default database: <%= ENV['DATABASE_NAME'] %> test: <<: *default database: tv_subscription_test production: <<: *default database: tv_subscription_production username: tv_subscription password: <%= ENV['TV_SUBSCRIPTION_DATABASE_PASSWORD'] %>
-
Execute os seguintes comandos para criar e migrar o banco de dados:
rails db:create db:migrate db:seed
Para iniciar o servidor em ambiente de desenvolvimento, execute:
rails serverA aplicação estará disponível em http://localhost:3000.
- Abra o Postman
- Crie uma nova requisição
- Configure a URL como
http://localhost:3000/{sua_rota} - Se necessário, adicione o corpo da requisição no formato JSON
- Envie a requisição e analise a resposta
ultilizar o front do repositorio git: https://github.com/itsuki-ALMA/tv-por-assinatura
Para rodar os testes automatizados, execute:
rspecEste projeto está sob a licença MIT.