Railsチュートリアルの各章が終わった状態を集めたリポジトリです。
『Railsチュートリアルって何?』という方は公式YouTubeチャンネルをご参照ください 📺 ✨
Sample App の開発途中でエラーの原因がどうしても分からないときや、Railsチュートリアル解説動画を視聴するときなどにご活用ください。(解説動画はお試し視聴もできます)
対応しているRailsのバージョン毎にディレクトリを分けております。具体的な対応関係は次のとおりです。
- Rails 7.0 対応 (第7版)
- Rails 6.1 対応 (第6版)
- Rails 6.0 対応 (第6版)
- Rails 5.1 対応 (第4版)
- Rails 5.0 対応 (第4版)
- Rails 4.2 対応 (第3版)
- Rails 4.0 対応 (第2版)
上記の各ディレクトリの中に 各章が終わった状態の sample_app を置いています。例えば 6_1 ディレクトリの場合は、次のようになります。
ch01: 第1章が終わった状態ch02: 第2章が終わった状態ch03: 第3章が終わった状態ch04: 第4章が終わった状態ch05: 第5章が終わった状態ch06: 第6章が終わった状態ch07: 第7章が終わった状態ch08: 第8章が終わった状態ch09: 第9章が終わった状態ch10: 第10章が終わった状態ch11: 第11章が終わった状態ch12: 第12章が終わった状態ch13: 第13章が終わった状態ch14: 第14章が終わった状態
なお、各章の演習の結果や、プロ品質のデプロイなどは反映されておりません。
本リポジトリにあるサンプルコードは、Railsチュートリアル用にカスタマイズしたGitHub Codespaces 上でのみ動作確認しています。
GitHub - yasslab/codespaces-railstutorial
- 🎓 Railsチュートリアル - 開発環境(GitHub Codespaces)
- 🎓 Railsチュートリアル - 困ったときのヒント集(ヘルプ)
macOS や Windows、Linux (Docker) などのローカル環境で動かす場合は個別にカスタマイズする必要がありますので、あらかじめご了承いただけると幸いです。
版番号や章番号ごとにセットアップ方法は異なります。例えば Codespaces を利用してRails 7.0 対応の第11章を動かす場合は次のようになります。 Codespacesの操作について詳しくは『1.2.1開発環境』が、GitおよびGitHubについて詳しくは『Git/GitHub編』 が参考になります。
-
本リポジトリをフォークしてからPCなどにクローンし、該当のディレクトリへ移動します。移動したディレクトリでGitの初期化からコミットまでを行います。
$ git clone https://github.com/<あなたのアカウント名>/sample_apps.git $ cd 7_0/ch11 $ git init $ git add . $ git commit -m "第11章動作確認" -
GitHubで、アプリを動かすためのリポジトリを作成します。ここではリポジトリ名をsample_ch11としておきます。
-
手順2で作成したリポジトリで表示されるURLをリモートリポジトリURLとして設定し、プッシュします。
# HTTPS接続の場合 $ git remote add origin https://github.com/<あなたのアカウント名>/sample_ch11.git $ git remote -v origin https://github.com/<あなたのアカウント名>/sample_ch11.git (fetch) origin https://github.com/<あなたのアカウント名>/sample_ch11.git (push) $ git push -u origin main -
手順2で作成したリポジトリで、「Code」から「Codespaces」タブに移動し、「Create codespace on main」をクリックすると環境構築がスタートします。しばらく待つとシンプルブラウザに「ActiveRecord::PendingMigrationError」が表示されるので、少し下の「Run pending migrations」ボタンをクリックするか、ターミナルを開いて以下のコマンドを実行するとデータベースが移行されます。
$ rails db:migrate -
テストを実行して、正しく動作していることを確認します。
$ rails test -
サンプルユーザーをデータベースに
seedします。$ rails db:seed
結果はシンプルブラウザにも表示されていますが、実際のブラウザとは表示が異なる場合もあるので、シンプルブラウザのタブか「ポート」タブから実際のブラウザ(Chromeのタブなど)を開いておくと良いでしょう。無事にセットアップが完了できていれば、トップ画面が表示されます。ログインページから以下のメールアドレスとパスワードを入力するとログインできます。
ここをクリックすると Codespaces 以外の環境で動かす場合の参考情報が開きます。
-
本リポジトリをクローンし、該当のディレクトリへ移動します。
$ git clone https://github.com/yasslab/sample_apps.git $ cd 7_0/ch11 -
本番環境でのみ必要なgemはスキップして
bundle installします。$ bundle install --without production -
データベースを移行します。
$ rails db:migrate -
テストを実行して、正しく動作していることを確認します。
$ rails test -
サンプルユーザーをデータベースに
seedして、アプリを実行する準備が整いました。$ rails db:seed $ rails server
無事にセットアップが完了できていれば、ブラウザから localhost:3000 にアクセスするとトップ画面が表示されます。
- メールアドレス:
[email protected] - パスワード:
foobar
なお、第13章以降のSample Appを本番環境にデプロイする場合は、別途Amazon S3のセットアップが必要になります。
The MIT License
Copyright © YassLab Inc.
Ruby on Rails Tutorial: Learn Web Development with Rails.
All source code in the Ruby on Rails Tutorial is available jointly under the MIT License and the Beerware License.
Copyright © Michael Hartl