1
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 3 years have passed since last update.

RailsチュートリアルGemfile編集(3章〜7章)

Last updated at Posted at 2020-11-10

#はじめに
Railsチュートリアルの3章以降を読んで、GemfileとGemfile.lockを更新しました。
1、2章までの環境構築は、rails new から heroku openまで
でまとめていますので、ご覧ください。

#Gemfileの更新
チュートリアルで指定されているGemfileを使わず、最低限のみを編集して3章に挑みました。
具体的には、rails new から heroku openまで
でまとめている通り、sqlite3とpgを編集しています。

しかしチュートリアル3.6でminitest等が出てくるため、Gemfileに不足していた下記5行を追加することに...

  gem 'rails-controller-testing', '1.0.4'
  gem 'minitest',                 '5.11.3'
  gem 'minitest-reporters',       '1.3.8'
  gem 'guard',                    '2.16.2'
  gem 'guard-minitest',           '2.4.6'

しかし、これでgit push herokuをやるとエラーが出ました...
「Failed to install gems via Bundler.」

とりあえず下記コマンドを実行

% bundle update

はい、もちろんエラーです。
1、2章の環境構築の際も上手く行きませんでしたから、当たり前ですね。

調べていくとこちらの記事に辿り着きました。
bundle install しようとしたら ruby のバージョン違くてコケた話
記事を参考に下記コマンドを実行しました。

% rbenv exec gem install bundler
% rbenv rehash

その後に再び下記を実行。

% bundle update

今回は成功しました🎉

その後もう一度、git push herokuを実行すると、
デプロイ成功です!!
1、2章の環境構築から上記コマンドを実行していれば良かったのかなと少し後悔中...

#Gemfile.lock
ちなみに今回の取組前後でGemfile.lockを比べて見ると、かなり違いがあることが判明しました。
差分が分かるように左に変更前、右に変更後のファイルを置いて比較しました。
スクリーンショット 2020-11-10 22.17.13(2).png
スクリーンショット 2020-11-10 22.17.34(2).png
スクリーンショット 2020-11-10 22.17.43(2).png
スクリーンショット 2020-11-10 22.17.51(2).png
スクリーンショット 2020-11-10 22.18.00(2).png
スクリーンショット 2020-11-10 22.18.10(2).png

これだけGemfile.lockのデータが違うとは...
bundlerのバージョンについては下記記事を参考にしました。

RailsをHerokuにデプロイするときのBundlerバージョン(2020年版)

#5章
4章では上記のGemfileで問題は起きませんでした。

5章ではGemfileにbootstrap-sassの追加が必要になりました。
Railsチュートリアル5章のリスト5.5の通りに、Gemfileに

gem 'bootstrap-sass', '3.4.1'

を追加し、

% bundle install

を実行。
無事インストールできました!

#6章
6章ではGemfileにbcryptの追加が必要になります。
5章と同じように下記一行をGemfileへ追加し、bundle installを行いました。

gem 'bcrypt', '3.1.13'
% bundle install

無事インストールできました!

#7章
7章ではGemfileのbyebugを使いますが、現段階で私のGemfileは下記のようになっています。

gem 'byebug', platforms: [:mri, :mingw, :x64_mingw]

バージョンが固定されていないので、下記のように書き足しました。

gem 'byebug', '11.0.1', platforms: [:mri, :mingw, :x64_mingw]

そして

% bundle install

無事インストールできました!

7章の7.5で、config/puma.rbconfig/database.ymlのファイル変更がありますが、チュートリアルと一切同じにするのではなくて最低限のみ合わせました。
とりあえずはこれでエラーなしでした。
チュートリアルのファイルは公式からご覧ください。
スクリーンショット 2020-11-18 22.54.26.png

スクリーンショット 2020-11-18 22.52.13.png

※8章以降も随時更新していきます!

1
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
1
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?