書籍概要

最短距離でしっかり身に付く! Webアプリケーション開発の教科書
Ruby on Railsで作る本格Webアプリ~

著者
発売日
更新日

概要

本書は,最低限の知識で,実用性のあるWebアプリケーションを開発するスキルを習得するための入門書です。「やりたいことを実現する,問題を解決するためのアプリを短期間で素早く開発するための力を身に付ける」ことをテーマに掲げ,「DiaLogBook(簡易SNS)」「OLiVES(オンラインイベント支援システム)」という実用的な2つのアプリを題材にして,手を動かしながら実際に動くWebアプリケーションを作る手順をチュートリアル形式で解説します。開発にはRuby on Rails 6を利用し,開発環境の構築からHerokuへのデプロイまでを紹介。初学者にもわかりやすいお勧めの1冊です。

こんな方におすすめ

  • Webアプリ開発の基本を身に付けたい人
  • Railsによる開発プロジェクトに配属された若手社員,初級プログラマー,学生

サンプル

samplesamplesamplesamplesample

目次

第1章 開発環境の導入

  • 1.1 Webアプリの構造
  • 1.2 開発フレームワークとは?
  • 1.3 Ruby on Railsと開発ツール
  • 1.4 Rails 環境の導入
  • 1.5 第1章のまとめ

第2章 匿名電子掲示板を作ってみよう

  • 2.1 Railsを学ぶ前に
  • 2.2 Railsの第一歩
  • 2.3 シンプルな電子掲示板
  • 2.4 第2章のまとめ

第3章 簡易SNSを作ってみよう(基本編)

  • 3.1 作成するシステムの概要
  • 3.2 ユーザ管理の導入
  • 3.3 ユーザ管理のカスタマイズ
  • 3.4 マイページ機能
  • 3.5 投稿機能
  • 3.6 第3章のまとめ

第4章 簡易SNSを作ってみよう(発展編)

  • 4.1 体裁(見た目)の修正
  • 4.2 新着投稿への対応
  • 4.3 便利な機能の追加
  • 4.4 Herokuへ配備
  • 4.5 第4章のまとめ

第5章 オンラインイベント支援システムを作ってみよう(基本編)

  • 5.1 複雑なモデル
  • 5.2 トラックやセッションの管理
  • 5.3 ユーザ管理とマイページ
  • 5.4  「参加登録」機能
  • 5.5 第5章のまとめ

第6章 オンラインイベント支援システムを作ってみよう(発展編)

  • 6.1 レコメンデーション機能
  • 6.2 管理者機能の追加(前半):イベントとデイの管理
  • 6.3 管理者機能の追加(後半):トラックとセッションの管理
  • 6.4 第6章のまとめ

サポート

正誤表

本書の以下の部分に誤りがありました。ここに訂正するとともに,ご迷惑をおかけしたことを深くお詫び申し上げます。

(2021年6月10日最終更新)

P.91 リスト2.36 2行目


get "messages/index"

# get "messages/index"

P.115 本文

これらのファイルをグッとにらみ、それぞれ「:email」を「:username」に、「:email_field」を「:text_field」に修正しましょう。
これらのファイルをグッとにらみ、それぞれ「email」を「username」に、「email_field」を「text_field」に修正しましょう。

「:」が不要でした。

P.120 本文下から1行目

次のように、7種類のルーティングが表示されています。
次のように、8種類のルーティングが表示されています。

P.121 本文最上段の図


  new_user GET    /users/new(.:format)      users#new
 edit_user GET    /users/:id/edit(.:format) users#edit
      user GET    /users/:id(.:format)      users#show
           PATCH  /users/:id(.:format)      users#update
           PUT    /users/:id(.:format)      users#update
           DELETE /users/:id(.:format)      users#destroy
           POST   /users(.:format)          users#create

      user GET    /users(.:format)          users#index
           POST   /users(.:format)          users#create
  new_user GET    /users/new(.:format)      users#new
 edit_user GET    /users/:id/edit(.:format) users#edit
      user GET    /users/:id(.:format)      users#show
           PATCH  /users/:id(.:format)      users#update
           PUT    /users/:id(.:format)      users#update
           DELETE /users/:id(.:format)      users#destroy

P.130 図3.9内(2箇所)

UTC
+0900

P.140 本文8行目

以上が、関連するデータモデルにおいて、dependency: :destroyを指定していたことによる挙動です。
以上が、関連するデータモデルにおいて、dependent: :destroyを指定していたことによる挙動です。

P.157 本文2行目

vi app/controllers/users_controller.rbに、(以下略)
app/controllers/users_controller.rbに、(以下略)

P.157 リスト4.17 タイトル


vi app/controllers/users_controller.rb

app/controllers/users_controller.rb

P.157 リスト4.17 3行目


@students = User.where(role: 'student').order('updated_at desc')

@students = User.where(role: 'student')
    .order('updated_at desc') if @user.role == "teacher"

P.163 本文下から2行目

config.default_per_pageの行をコメントアウトし、(以下略)
config.default_per_pageの行のコメントアウトを外し、(以下略)

P.214 本文4行目

作成されたapp/model/users.rbには、以下を追記しておきましょう(以下略)
作成されたapp/models/user.rbには、以下を追記しておきましょう(以下略)

P.214 リスト5.22 タイトル


app/model/users.rb

app/models/user.rb

補足情報

(2021年6月15日更新)

Bootstrapバージョンについて

本書は原稿執筆時のバージョンである,Bootstrap 4.4を前提とした解説になっております。現在ではBootstrap 5系がリリースされており,書籍の内容に影響がある部分について下記の通り補足いたします。

P.144 ページ中ほどのコマンド

書籍に掲載したコマンドを実行すると,現在では最新のBootstrap 5がインストールされてしまいます。そこで,以下のように明示的にバージョンを指定してインストールします。

  • yarn add jquery popper.js bootstrap@4.4

本書の手順に従ってすでにインストール済みの場合は,以下のコマンドでBootstrapをいったん削除し,Bootstrap 4.4をインストールし直すことができます。

  • yarn remove bootstrap
  • yarn add bootstrap@4.4

商品一覧