Docker+Rails+MySQL+Vue로 Todo 어플리케이션 만들기 ~ 1 ~

입문


지난번: Docker+Rails로 개발 환경을 만듭니다.
간신히 했는데도 개발하지 않는 것은 너무 아깝다.
하지만 할 수 있는 일은 한계가 있다.
따라서 TODO 응용 프로그램을 만들어 보십시오

목표

  • trello
  • 이번에는 seed 데이터를 투입하여 일람표를 표시한다.
  • 제목 사기, "1"에서 Vue를 사용하지 않음(그 정도는 아님)
  • 1. 준비


    Docker를 시작하여 컨테이너에 연결합니다.
    $ cd myapp
    $ docker-compose up
    $ docker ps
    
    제어myapp_webmysqlCONTAINER ID각 컨테이너에 연결하다.
    web
    $ docker exec -it CONTAINER_ID bash
    root@CONTAINER_ID:/myapp#    これでOK
    
    db
    docker exec -it CONTAINER_ID bash
    root@CONTAINER_ID:/# mysql -u root -p
    Enter password:  # database.yml に記載したパスワード
    mysql>     これでOK
    

    2. Rails 사용


    2.1 제작 모형
    작업 모형을 만들다.
    web
    # rails g model Task title:string context:string level:integer
    # rails db:migrate
    
    2.2 컨트롤러도 제작
    Tasks입니다.
    복수 형식이라는 것을 알아차렸는데, Rails Tutorial에서는 확실히 이렇게 배웠습니다.
    # rails g controller Tasks
    
    일단 일람표를 보고 싶어요.
    tasks_controller.rb
    class TasksController < ApplicationController
      def index
        @tasks = Task.all
      end
    
      def show
      end
    
      def new
      end
    
      def create
      end
    
      def edit
      end
    
      def update
      end
    
      def destroy
      end
    end
    
    참고로 다른 것도 CRUD의 7개의 프레임만 준비되어 있습니다.
    2.3 인덱스가 표시하는seed 데이터
    seeds.rb
    Task.create(
      [
        {
          title: 'task 001',
          context: 'hogehoge',
          level: '2',
        },
        {
          title: 'task 002',
          context: 'fugafuga',
          level: '3',
        },
        {
          title: 'task 003',
          context: 'piyopiyo',
          level: '1',
        },
      ],
    )
    
    
    web
    # rails db:seed
    
    2.4 seed 데이터 생성 후db 보기
    ySQL 측면에서 데이터베이스 이름 확인
    sequel pro에 실제 데이터가 포함되어 있는지 확인하십시오.
    db
    mysql> show databases;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | myapp_development  | # こいつを使うよ
    | myapp_test         |
    | mysql              |
    | performance_schema |
    | sys                |
    +--------------------+
    
    끝나고 컨테이너와 함께exit.

    연결 후

    너무 좋아요.
    다음은 이 데이터를 화면에 표시합니다.

    3. 준비 사항 보기


    방금 rails db:seed 제작한 데이터를 표시하고 싶습니다.
    표시된 페이지는 /tasks/ (루트 페이지)
    3.1 라우팅 선택
    routes.rb
    Rails.application.routes.draw do
      root to: 'tasks#index'
    
      resources :tasks
    end
    
    3.2 보기 파일 만들기
    모델, controller 있음rails gview는 없는 것 같습니다.
    그래서 수동 제작
    $ touch app/views/tasks/index.html.erb
    $ touch app/views/tasks/show.html.erb
    $ touch app/views/tasks/new.html.erb
    $ touch app/views/tasks/edit.html.erb
    
    index.html.erb
    <h1>Your Tasks</h1>
    
    <ul>
      <% @tasks.each do |task| %>
      <li><%= task.title %><%= task.context %></li>
      <% end %>
    </ul>
    
    작업이 가지고 있는 title과contextTask.all의 수량을 표시합니다
    ...자꾸 모델 하기 싫어지는 것 같아.
    그런 다음 로컬 호스트에 연결하여 확인합니다.

    완성했습니다.
    아무튼 이만 마치겠습니다.
    다음은 다음.

    참고 자료


    Rails에서 작업을 관리할 수 있는 웹 응용 프로그램을 만들어 보았습니다(Rails 시작).
    [Ruby on Rails] 간단하게 ToDo 어플리케이션을 만들어 보도록 하겠습니다.
    정말 감사합니다.

    좋은 웹페이지 즐겨찾기