【Rails】 더 이상 헤매고 싶지 않아. 모델, 테이블, 컨트롤러, 뷰의 새로 생성.

소개



이 기사는 Rails 앱을 시작한 후의 작업을 요약한 것입니다.
어떠한 기능을 만들 때에는 모델을 만들고 컨트롤러를 만들어 라우팅을 써서...라는 작업이 빈발합니다.
매번 구문을 잊어 버리기 때문에 일련의 흐름을 정리했습니다.

컨트롤러 만들기



우선 컨트롤러의 작성입니다.
이번에는 이미지를 저장하는 기능을 만들기 때문에 images로합니다.
rails g controller images

모델 만들기



아래 명령으로 이미지 모델을 만드세요!
rails g model image

이제 image 모델이 만들어졌다고 생각합니다.
필요한 경우 모델에 유효성 검증 및 연관을 작성하십시오.

테이블 만들기



모델을 만들 때 마이그레이션 파일도 만들어졌다고 생각합니다.
이 파일을 편집하여 기본 키나 null 제약 등의 설정을 실시합니다.
제 경우에는 다음과 같이 "filename"을 기본 키로 사용하고 null 제약 조건을 적용합니다.
기본 키로 했기 때문에 그런 제약이 필요 없을지도 모르지만 ...
class CreateImages < ActiveRecord::Migration[5.2]
  def change
    create_table :images, id: false, primary_key: :filename do |t|
      t.string :filename, null: false
      t.timestamps
    end
  end
end

그러면 마이그레이션을 실행하고 정상적으로 끝나면 테이블이 만들어집니다!
rails db:migrate

뷰 만들기



이미지 목록을 표시하는 페이지로 index.html.haml을 만듭니다.
지금까지의 작업으로 images 디렉토리가 작성되었으므로 거기에 작성합니다.
뷰의 내용에 대해서는, 이번 기사로 채우는 곳이 아니므로 적당하게 "HelloWorld"를 내 둡니다.
%h1
  HelloWorld

라우팅



여기까지 오면 거의 할 수 있었던 것 같습니다.
routes.rb에 이미지 라우팅을 설명합니다.
이번에는 resources 메소드를 사용하여 index 액션 만 설정했습니다.
Rails.application.routes.draw do
  resources :images, only: [:index]
end

결과



할 수 있었습니다! 이것으로 일이 끝납니다 ...!

좋은 웹페이지 즐겨찾기