今回Railsの学習中に使用したので自分用のメモとしてまとめてみました。
homebrewやrbenvの設定は終わっている想定です。
Railsのインストール
以下のコマンドを実行します。
バージョンはプロジェクトに合わせて変更してください。
$ gem install rails -v "5.2.3"
インストールが完了したら以下のコマンドでバージョンを確認してみましょう。
$ rails -v
指定したバージョンが表示されればOKです。
Railsアプリケーションの作成
Railsアプリケーションを新規作成していきます。
アプリケーションの新規作成には以下のコマンドを使用します。
アプリ名は仮に「sample」とします。
$ rails new sample -d mysql
上記のコマンドは sample
という名前のRailsアプリケーションを作ります、データベース管理システムは MySQL
で作ります、ということを意味しています。
Railsアプリケーションへの移動・立ち上げ
先程作成したsampleフォルダに以下のコマンドを使用して移動しましょう。
$ cd sample
そして
$ rails s
テストサーバーを立ち上げてみます。
その状態で http://localhost:3000/
にブラウザでアクセスできればOKです。
Railsアプリケーションの構成
appディレクトリ
ディレクトリ名 | なにが入っているか | 役割 |
---|---|---|
assets | CSSファイル、JSファイル、画像 | デザインに関すること |
controllers | コントローラ | モデルに命令を出し、ビューにデータを渡す |
helper | ヘルパー | ビューで使う自作メソッドを定義 |
models | モデル | データベースとのやりとり |
views | ビュー | 見た目の部分(HTMLの素) |
configディレクトリ
ディレクトリ/ファイル名 | 役割 |
---|---|
environments | 環境ごとの設定 |
initializers | Gemやクッキー、セッションの設定 |
helper | ヘルパー |
models | モデル |
views | ビュー |
dbディレクトリ
ディレクトリ/ファイル名 | 役割 |
---|---|
migrate | マイグレーションファイル |
schema.rb | DB内のテーブルの状況 |
seeds.rb | 初期データを作成するファイル |
Gemfile
Gemfileはインストールしたいgemを書くためのファイルです。 Gemfileのすぐ下に Gemfile.lock というファイルがあり、実際にインストールしたgemやバージョンが書かれています。
gemは以下のコマンドでインストールできます。
$ bundle install
bundle
bundleはbundlerというgemのバージョンを管理してくれる機能です。
rails g (generate)
rails g
コマンドは、rails new
コマンド で作ったRailsアプリケーションの土台に中身を盛り込んでいくためのコマンドです。
$ rails d scaffold tweet title:string content:text
コマンド | コントローラ | ビュー | モデル | マイグレーションファイル | ルーティング |
---|---|---|---|---|---|
controller | ○ | ○ | × | × | ○ |
model | × | × | ○ | ○ | × |
migration | × | × | × | ○ | × |
scaffold | ○ | ○ | ○ | ○ | ○ |
DBの作成
Railsでは config/database.yml
というファイルを編集することで、データベースの設定を
運用環境ごとに変更できる仕組みになっています。
encodingがutf8mb4となっていればutf8に変更します。
default: &default
adapter: mysql2
encoding: utf8
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
username: root
password: password
socket: /tmp/mysql.sock
最後に以下のコマンドでDBを作成します。
rails db:create