Rails Console Json Data
레일스 콘솔에서 데이터 편하게 보는법.
일단 그냥 보면 되지 굳이 명령어하나 더 치면서 데이터를 확인할까 하지만 데이터가 너무 길고 보기 힘들때 이해도 못하는 데이터 보기라도 편하게 바꿔보자 싶어서 찾아보았다.
먼저 일반적으로 보던 모습이다.
1 | {"id"=>321312312, |
일단 그냥 보면 되지 굳이 명령어하나 더 치면서 데이터를 확인할까 하지만 데이터가 너무 길고 보기 힘들때 이해도 못하는 데이터 보기라도 편하게 바꿔보자 싶어서 찾아보았다.
먼저 일반적으로 보던 모습이다.
1 | {"id"=>321312312, |
Grape 젬은 레일스 환경에서 REST 와 유사한 API 프레임워크이다.
Grape GitHub
Grape Gem GitHub HomePage
1 | # Gemfile |
Gemfile 에 grape 젬을 추가해준뒤 bundle install 명령어를 실행한다.
적용하기 위한 프로젝트의 레일스 버전이 7버전으로 grape github README 를 따라 6버전 이상의 세팅 방법을 따라 진행 하였다.
path: ./config/initializers/inflections.rb
아래의 코드가 이미 작성되어있고 주석처리가 되어있다. 해당부분 주석을 제거하고 작성해주면 된다.
1 | ActiveSupport::Inflector.inflections(:en) do |inflect| |
1 | cd app |
path: ./app/api/base_api.rb
1 | class BaseApi < Grape::API |
path: ./app/api/default_controller.rb
1 | class DefaultController < BaseApi |
path: ./config/routes.rb
1 | Rails.application.routes.draw do |
1 | work dir: ./app |
path: ./app/api/user_controller/user_api.rb
1 | module UserController |
개발 환경
ruby-on-rails -v 7.0^
ruby -v 2.7.1
RubyMine
Docker
docker-compose
postgres -v 14.2-alpine
1 | mkdir backend |
Dockerfile 작성
1 | # syntax=docker/dockerfile:1 |
docker-compose.yml 작성
1 | version: "3" |
Gemfile, Gemfile.lock 생성
1 | touch Gemfile |
1 | # Gemfile |
docker-compose.env
1 | POSTGRES_USER=user |
1 | docker-compose build |
빌드를 시작해도 아직 레일스 세팅이 안되어있다. docker 컨테이너를 이용하여 레일스 설치를 진행한다.
1 | docker-compose run --no-deps web rails new . --api --force --database=postgresql |
실행 시 뭔가 쭉쭉 설치되고 로컬 디렉토리와 컨테이너 볼륨을 지정해줬기 때문에 작업 디렉토리에 레일스 폴더, 파일들이 생성된다.
1 | # ./config/database.yml |
아직 도커에서 실행중인 postgresql 에는 데이터베이스가 생성되어있지 않다. yml 파일에서 지정한 데이터베이스들을 생성해주기 위해서는 아래 명령어를 실행한다.
1 | docker-compsoe up # 컨테이너 실행 명령어 |
크롬 -> localhost:3000 접속 결과 확인