0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Railsでの一覧機能作成手順

Last updated at Posted at 2022-06-22

はじめに

初心者なりにまとめたものになりますので、諸先輩方からは何書いてんだおめえと感じる部分があると思います。
そう感じた際は、お手数ですが、コメント頂けると幸いです。

内容としては、 コントローラー作成からマイグレーションになります。

目次

  • 一覧機能を実装する手順
    -routes.rbファイルの編集
    -ルーティングの確認
    -コントローラーの作成
    -indexアクションの定義
    -ビューファイル作成・編集
    -ビューの実装確認
    -モデルの作成
    -マイグレーションファイルの編集
    -マイグレーションの実行

routes.rbファイルの編集

  • app/config/routes.rbに存在するファイルの編集
    初期は
    Rails ------ do
    ~~
    end
    が存在し、~~の箇所へ下記のコードを入力
    ※作成したばかりの時は、~~の中身は削除する

get 'posts', to: 'posts#index'
HTTPメソッド 'URIパターン', to: 'コントローラー名#アクション名'

解説
HTTPメソッドは行いたいリクエストの種類で異なる
URIパターンはリクエストのパスで異なる(URLのような物)
コントローラー名とアクション名はリクエストに対して行いたい処理で異なる

ルーティングの確認

ターミナルを開き、上で編集したアプリのディレクトリへ移動
下記のコードを実行する。

rails routes

実行後、下記のコードが表示されていればルーティングができている

Prefix  Verb  URI Pattern       Controller#Action
posts   GET   /posts(.:format)  posts#index

 

コントローラーの作成

ターミナル上でアプリ名のディレクトリにいることを確認(pwd)し、下記コマンドを実行

rails g controller posts 
rails g controller (コントローラー名の複数形)      

 

indexアクションの定義

VS Code上のposts_controller.rbで、下記のようになっている事を確認

class PostsController < ApplicationController

~~

end

~~の部分へ以下へ書き換える。

class PostsController < ApplicationController

def index  
end

end

 

ビューファイルの作成・編集

app/views/postsに、index.html.erbのファイルを作成する
作成したファイルに以下を記述する。

<h1>トップページ</h1>

作成後、rails sでサーバーを起動し、下記URLへアクセス
http://localhost:3000/posts
トップページと表記されたページがアクセス出来ればOK

モデルの作成

ターミナル上で作成したアプリ名のディレクトリにいることを確認(pwd)し、下記コマンドを実行

rails g model post
rails g model (モデル名の単数系)

 

マイグレーションファイルの編集

モデル作成時に作成される、マイグレーションファイルを編集する
db/migrate/20XXXXXXXXXXXX_create_posts.rbに作成されているファイルが以下のようになっている事を確認(20XXXXXXXXXXXXは作成時に決まる)

class CreatePosts < ActiveRecord::Migration[6.0]
  def change
    create_table :posts do |t|
      --
      t.timestamps
    end
  end
end

--となっているところへ、下記を記述

t.text :memo
t.(追加したいカラムへ入れる値の型) :(カラムの名前)

解説
t.text :memo のような記述は追加したいカラムの数が複数あれば、改行する事で、複数のカラムを追加出来る
追加したいカラムへ入れる値の型はいくつか種類があり、下記へ記す

カラムの型:値の説明
integer:数値
string:文字(短文)
text:文字(長文)
boolean:真or偽
datetime:日付と時刻

マイグレーションの実行

ターミナル上で、作成したアプリ名のディレクトリにいることを確認( pwd)し、下記コマンドを実行
実行後は、Sequel Proへマイグレーションファイルで編集したカラムが追加される

rails db:migrate

おわりに

以上、自分の備忘録&アウトプットも兼ねて書いて見ました。
ご覧頂き、ありがとうございました

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?