新規Railsプロジェクトの作成(Rails6)
本記事はRuby on Railsで新規プロジェクトを作成する方法を解説したものです。
環境構築が終わっていない方は以下の記事を参考に環境構築を進めてください。
他にもプログラミング学習に役立つような情報を発信しています!アカウントをフォローしてお待ちください!
ゴール
今回の目標は「ローカルサーバーを立ち上げて、Railsのデフォルトページを表示する」ことです。
ゴールまでの流れ
ゴールまでの手順は次のとおりです。
- ローカルにインストールされたRailsのバージョンを確認
- 新規Railsアプリケーションを作成
- 作成したディレクトリに移動
- データベースを作成
- ローカルサーバーを起動
- Railsのデフォルトページを表示
それでは、実際にWebアプリケーションの作成を行いましょう。
1. ローカルにインストールされているRailsのバージョンの確認
新規Railsアプリケーションを作成する前に、ローカルにインストールされたRailsのバージョンを確認します。
ターミナル上で、次のコマンドを入力してください。
gem search ^rails$ -l
コマンドを実行すると、次のような結果が表示されます。
gem search ^rails$ -l
*** LOCAL GEMS ***
rails (6.0.3.4)
「Rails6.0.3.4」がインストールされていることがわかります。
表示されたバージョンを使って、Railsアプリケーションを作成します。
2. 新規Railsアプリケーションの作成
RailsでWebアプリケーションを新規作成します。
Webアプリケーションの新規作成では、rails newコマンドを入力します。
rails new
コマンドでは命令文の最後に作成するアプリケーション名を指定します。
【例】
rails new 作成するアプリケーション名
今回はRails6.0.3.4を使って「techpit-match」という名前のアプリケーションを作成します。
次のコマンドを入力します。
rails _6.0.3.4_ new techpit-match --database=postgresql
命令文のrails
とnew
の間にRailsのバージョンを入力すると、Railsのバージョンを指定できます(ここではローカルにある6.0.3.4を指定)。
また--database=
で利用するデータベースを指定できます(ここではpostgresql
を指定)。
※Cloud9でpostgresql
を指定するとエラーが発生する場合があります。
その場合は、データベースを指定せずにコマンドを実行しましょう。
rails new
コマンドで「techpit-match」というディレクトリ(フォルダ)が作成されました。
3. 作成したディレクトリに移動
cdコマンドを使って、新たに作成した「techpit-match」ディレクトリに移動します。
ちなみに「cd」は、change directory(ディレクトリを移動する)の略です。
ディレクトリ移動を行う命令文は、次の表現になります。
【例】
cd 移動したいディレクトリ名
今回は「techpit-match」ディレクトリに移動するため、次のコマンドを入力します。
cd techpit-match
コマンドを実行すると、「techpit-match」ディレクトリに移動します。
4. データベースを作成
「techpit-match」ディレクトリ内にローカルサーバーを立ち上げるために、データベースを作成します。
データベースを作成するには、次のコマンドを入力します。
rails db:create
コマンドを実行すると、次の実行結果が表示されます。
rails db:create
Created database 'techpit_match_development'
Created database 'techpit_match_test'
rails db:create
コマンドを実行すると、config/database.yml
ファイルを元にデータベースを作成します。
config/database.yml
ファイルには、データベースに関する設定が記述されているファイルです。実際にファイルの中身を見てみましょう。
# 中略
# Configure Using Gemfile
# gem 'pg'
#
default: &default
adapter: postgresql
encoding: unicode
# For details on connection pooling, see Rails configuration guide
# https://guides.rubyonrails.org/configuring.html#database-pooling
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
development:
<<: *default
database: techpit_match_development
# 中略
# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
<<: *default
database: techpit_match_test
# As with config/credentials.yml, you never want to store sensitive information,
# like your database password, in your source code. If your source code is
# ever seen by anyone, they now have access to your database.
# 中略
以下のコードを見てください。
development:
<<: *default
database: techpit_match_development
# 中略
test:
<<: *default
database: techpit_match_test
development
は開発用という意味で、test
はテスト用という意味になります。
database
はデータベース名を指定しています。今回でいうと開発用はtechpit_match_development
、テスト用はtechpit_match_test
という名前でデータベースを作成しています。
5. ローカルサーバーを起動
ローカルサーバーを立ち上げるには、次のコマンドを入力します。
rails server
コマンドを実行するとサーバーが起動します(rails s
と省略することも可能)。
うまくサーバーが起動すると、ターミナルで次のように表示されます。
rails server
=> Booting Puma
=> Rails 6.0.3.2 application starting in development
=> Run `rails server --help` for more startup options
Puma starting in single mode...
* Version 4.3.5 (ruby 2.7.1-p83), codename: Mysterious Traveller
* Min threads: 5, max threads: 5
* Environment: development
* Listening on tcp://127.0.0.1:3000
* Listening on tcp://[::1]:3000
Use Ctrl-C to stop
6. Railsのデフォルトページを表示
ローカルサーバーを起動したら、ブラウザで「http://localhost:3000/ 」にアクセスします。
次の画像のようにRailsのデフォルトページが表示されていれば、うまく動作しています。
※Cloud9では一部設定が必要になります。以下の記事を参考に修正を行ってください。
【Cloud9】Ruby on Railsでrails sしたときにBlocked hostが表示された時の対処法
本記事は以上です。
今後もRailsに関する記事を投稿していきますので、アカントをフォローしてお待ちください。