Railsアプリ作成

【Rails】初心者がWebアプリを作ってみた!【第2回:実際にアプリが正常に動くまでを解説】

こんにちは!まろんぼーいです。

 

今回は、「初心者がWebアプリを作ってみた」シリーズの第2回です。

 

 

このシリーズでは、過去に完全初心者の僕が作ったWebアプリを参考に、

初心者なりに試行錯誤しながらその改良版を一から作っていく過程をお見せしています。

 

このシリーズのモットーは、「同様の初心者が、アプリ作成の流れをつかみながら同様のアプリを作れるようになること」です。

ということで、基本的にアプリを作成していく過程を順を追って解説していますが、

「正確な内容」よりも、「わかりやすいなんとなくのイメージ」を重視して記事を書いています。

 

経験者の方からすると、「正確にはちがう!」と突っ込みたくなるような内容もあるかと思いますが、

難しい知識よりも、なんとなくでいいので流れをつかむ!

そんな内容となっていますので、同じ初心者の方の参考になればうれしいです!

 

それでは今回もはじめていきましょう!

 

 

 

 

〇前回の進捗

 

 

今回から、実際にアプリを作っていきます。

環境はAmazon Web Service(AWS)を使ってやっていきます!

詳細は以下の記事をご覧ください!

 

 

それでは早速始めていきます!

 

 

〇Railsの開始

・Railsのバージョン確認

 

始めにやることは、「自分が使うRailsのバージョンを決めること」です!

 

Railsには多くのバージョンがあります。

バージョンによって使える機能が変わってくるので、最初にこれを決める必要があります。

 

ちなみにQiitaを見ても多いのは、5.2.2のようです。

僕も5.2.2を使っているので、僕の記事を参考にしたい方は同じ5.2.2がいいかと思います。

 

Railsのバージョンを決めたら、そのバージョンのgemをダウンロードする必要があります。

 

gemについてはググってみればわかると思いますが、Railsを使う際の便利なパッケージのようなものです。

 

※ちなみにですが、基本的に僕の解説は初心者の僕の知識で話しているので、

「正確には違う」ことがあるかもしれません(笑)。

なんとなくわかればいい方はそのまま読んでいただければと思いますが、

適切に学びたい方は自分で調べてみることをお勧めします。

(おまえがしっかり勉強しろというお言葉、真摯に受け止めます…)

 

さて話を戻して、

例えばRails5.2.2のgemをインストールしたい場合は、以下のコードをターミナルで実行します。

 

ちなみにちゃんと自分の狙ったバージョンが入っているか確認したい場合は以下をターミナルで試すといいです。

 

よし、これでバージョンの確認は終了です!

いよいよアプリを始めていきます!

 

・新しいRailsアプリの作成

 

最初にアプリの名前を決めちゃいます。

うーん、今回はMyTravelとしときます。

 

以下をターミナルで実行すると、アプリが作れます!

 

さて、上のコードを英訳すると、何したかわかります。

 

「rails5.2.2で、『MyTravel』というアプリ新規作成。データベースはmysqlを使い、テストはスキップする。」

 

「テストはスキップ」は、Railsのデフォルトで自動テスト機能がついているのですが、

僕は自動テスト機能扱えないので、「自動テストはしない」という設定にしているということです!(力不足)

 

「データベースにmysqlを使用」については、

例えばアプリではユーザーデータだったりいろんなデータをネット上に保存しておく必要がありますよね?

その保存先として、「mysql」というデータベースを指定しているということです。

 

さて、上のコードをターミナルで実行すると、ターミナル上でいろんなコードが自動で書かれていきます。

(なんかプログラマー感出る(笑))

 

するとこんなかんじのフォルダが作成されたと思います。

ではこのアプリ用のデータベースも作ってしまいましょう。

 

ターミナルで以下を実行

→「MyTravel」フォルダに移動(「$」はターミナルの先頭についているのでこっちでもわかりやすくするためにつけています。コピー不要。)

 

→railsでデータベース(databaseでdb)を作成

 

それでは以下のコマンドでrailsアプリが作られているか確認します。

→自分のアプリのサーバー(serverのs)起動

 

これを実行することで、自分のアプリを起動することができます。

ちなみにAWSでは以下の赤丸部分をクリックすると自分のアプリ内に飛べます。

さてと、アプリが作れたかな。

 

 

ふぁっ

エラー出た!(笑)

 

こうやって謎のエラーが出ること結構あります…

 

確認してみたところ、mysqlの起動ができていなかったようです…

 

ターミナル上でCTRL+Cでサーバーを一度切ります。

そしたら以下をターミナルで実行し、mysqlを起動します。

 

 

mysqlが起動できたら、お手数ですが以下のターミナル操作をもう一度します…

 

 

 

 

さあ、今度こそ!

 

 

YES!

できました!

 

この画面が出たら、アプリが正常に起動している証拠です!

 

すみません、バタバタしましたが、初心者のリアルの記録として、温かい目で見ていただければと思います。

逆に、同じミスをする初心者の方の参考になありますよ!きっと!(見苦しい)

 

 

〇MVCとルーティング

・MVCの理解が一番大事、でも最初の壁

 

さて、アプリも無事起動したし、中身を作っていきたいところ。

 

ところで、Railsの中身の主な構成要素は、

Model、View、Controller、Routerの四つ。

 

 

これ、Railsを始めて最初にぶつかる壁だと思います。

 

「急に知らない単語のオンパレード…まあそんなに理解していなくても大丈夫っしょ、とりあえず放置」

 

これやると、あとで躓きやすくなります(笑)。

 

特にエラーが出たとき、MVCを追って原因を探していくので、ここで理解ができていないとドツボにハマります…(経験者は語る)

 

・ネットの記事で勉強しよう

 

僕なりにこの4つの説明を書いていたんですが、わかりやすく説明するのが難しくて挫折しました(笑)。

 

でも、MVCとルーティングの理解は誰しもが最初にあたる壁なので、

その分わかりやすい解説記事がネットにあふれています!

 

ググってサクッと調べちゃいましょう!

 

僕も一通り調べてみましたが、初心者としては以下の記事は説明が易しくとても分かりやすかったです。

説明力、うらやましい(笑)。

 

 

 

僕自身とても勉強になりました!

この辺の記事を読んで、MVC+ルーティングについて少しでも事前知識を持って次回の記事に進んでいただければと思います。

 

 

今回はここまでにします。

次回は、MVCを実際に使ってアプリの中身を作っていきます!

 

今回もご覧いただきありがとうございました!!

 

 

出典:

https://rails-study.net/mvc-r/

https://diveintocode.jp/blogs/DIVEINTOCODE/railsBank