Ruby on Rails 6 超入門 (単行本)
Ruby on Railsは、Ruby言語を使った世界でもっとも有名なフレームワークです。最新のRails 6は、以前にもましてパワフルに進化しました。本書は、プログラミング言語RubyとフレームワークRuby on Rails 6を使った、初心者のためのWebアプリ開発入門書です。「Railsの経験はないけれど、手っ取り早くRailsを知りたい」という人でも挫折しないよう、サンプルを実際に試しながら学べます。またRails 6の新機能も解説します。
Chapter1 Railsの基本を覚えよう!
1-1 Railsを準備しよう
Webの開発って?
開発は大変!
フレームワークの登場!
Railsとは?
RailsとMVC
Railsを使う上で必要なもの
Rubyをインストールする(Windows)
HomebrewでRubyをインストールする(macOS)
Railsをインストールする
1-2 Visual Studio Codeを使おう
開発ツールについて
Visual Studio Codeってなに?
Visual Studio Codeをインストールする(Windows)
Visual Studio Codeを起動しよう
フォルダを開いて編集
入力を支援する機能について
1-3 Railsアプリケーションを作ろう
Railsアプリケーションの作成
サーバーで実行しよう
この章のまとめ
Chapter2 ControllerとViewを使おう!
2-1 Railsアプリの構成
Railsアプリの中身について
「app」フォルダの中身
2-2 コントローラーの基本
コントローラーって?
Helloコントローラーで作られるもの
hello_controller.rbをチェック!
アクションを追加する
コントローラーとアクションのアドレス
ルーティングとroutes.rb
ルーティングとget
HTMLを出力する
クエリーパラメータを使う
2-3 ビューを利用する
テンプレートを作ろう
Bootstrapを使おう
indexメソッドの修正
テンプレートに値を表示する
リダイレクトとパラメータ送付
フォームの送信
InvalidAuthenticityTokenとCSRF対策
CSRF対策を無効にする
2-4 フォームヘルパーを使おう
フォームヘルパーでフォームを作る
フォームヘルパーの働き
フォームヘルパーで属性を指定する
チェックボックスの利用
ラジオボタンを利用する
選択リストを使う
複数選択可なリスト
その他のヘルパー機能
2-5 レイアウトを考える
レイアウトファイルについて
application.html.erb
オリジナルのレイアウトを作ろう
ヘッダー/フッターを作る
コントローラーを修正して完成!
2-6 メッセージボードを作ろう
テキストファイル利用のメッセージボード
コントローラーを作成する
index.html.erbを記述する
msgboardレイアウトを作る
コントローラーを作成する
MyDataクラスについて
データの保存
データの読み込み
1日経過したデータを削除する
GET/POSTとファイルの保存がポイント
この章のまとめ
Chapter3 Modelとデータベースを使おう!
3-1 SQLiteデータベースを使おう
データベースとSQL
モデル(Model)について
SQLiteについて
データベースの設定
SQLiteを使ってみよう
テーブルを作成する
データの保存
全データを表示
データの検索
データベース使いこなしのポイントは?
3-2 モデルの基本を覚えよう
モデルを作ろう!
Personモデルのソースコード
マイグレーションの実行
マイグレーションファイルをチェックする
シードを作る
コントローラーを作成する
indexアクションでデータを表示する
テンプレートを作成する
ルーティングの設定
データベース利用は「モデル」の使い方次第
3-3 CRUDをマスターしよう
IDでデータを検索
show.html.erbテンプレートを作る
index.html.erbを修正しよう
データの新規作成
コントローラーの作成
モデルをフォームに適用する
paramsのパーミッション
データの更新
edit.html.erbの作成
ルーティングを追加する
データの削除
CRUDはデータ操作の基本!
3-4 読書カードを作ろう!
データを蓄積する楽しみ
MVCの作成手順
モデルを作成しよう
コントローラーを作成する
CardsControllerを作成する
index.html.erbを作成する
show.html.erbを作る
add.html.erbを作る
edit.htmlを作る
cards.html.erbを作る
routes.rbを修正する
この章のまとめ
Chapter4 データベースを更に使いこなせ!
4-1 検索をマスターしよう
peopleレイアウトを用意する
stylesheet_link_tagについて
検索ページを用意しよう
whereで検索する
式を書いて検索する
LIKE検索
複数の条件を設定するには?
最初のデータ、最後のデータ
複数のIDを検索する
データの並び順を設定する
結果の一部分を取り出す
4-2 バリデーションをマスターしよう
入力チェックの必要性
バリデーションルールを用意する
アクションでバリデーションチェックする
バリデーションの主なルール
エラーメッセージを表示させよう
日本語のメッセージにしたい!
ビュー側でメッセージを表示するには?
バリデーションルールを自分で作る!
EmailValidatorを使ってみる
4-3 複数モデルの連携
「アソシエーション」ってなに?
Messageモデルを作る
Messageモデルを修正する
Messagesコントローラーを作成する
レイアウトを作成する
テンプレートを用意しよう
has_oneアソシエーション
has_manyアソシエーション
belongs_toアソシエーション
4-4 Scaffoldを使いこなそう
CRUDの基本はほぼ同じ!?
Scaffoldは、Webアプリの土台作り
Scaffoldでデータベースを作ろう!
実行して動作を確認
モデルをチェックする
マイグレーションをチェックする
コントローラーをチェック
indexアクションについて
newアクションについて
editアクションについて
destroyアクションについて
routes.rbをチェックする
Scaffoldは使い方次第!
4-5 Q&Aサイトを作ろう
Q&Aは掲示板よりちょっと難しい!
テーブルを設計する
Scaffoldでベースを生成する
動作を確認しよう
マイグレーションの内容をチェック
モデルを作成する
必要なアクションは?
Question/indexテンプレートの修正
Question/newとformの修正
Question/showとform2の修正
_form2.html.erbを使う
QuestionsControllerを修正する
AnswerControllerを作成する
Q&Aレイアウトを用意する
この章のまとめ
Chapter5 その他に覚えておきたい機能!
5-1 Reactとの連携
フロントエンドフレームワークについて
React用アプリケーションを作成する
indexページを作る
hello_react.jsxをチェック
コンポーネントの属性を使う
サーバーから情報を得るには?
Datumモデルを作成する
Dataコントローラーを作る
ビューテンプレートを作成する
Reactのスクリプトを作成する
Yahoo!ニュース・ヘッドラインを表示しよう!
ajaxアクションを修正する
dummy_data.jsxを修正する
5-2 Deviseでユーザー認証を行なおう
ユーザー認証は難しい!
Deviseアプリケーションを作る
Deviseのインストールと設定
Helloコントローラーを作成する
Helloのページを作成する
ログイン処理をチェック!
ログインの仕組み
Deviseの画面をカスタマイズする
5-3 ページネーション
ページネーションとは?
サンプルアプリを作ろう
設定ファイルを作成する
アクションを修正する
テンプレートを修正する
Kaminari用のタグについて
ナビゲーションの表示スタイル
5-4 新メッセージボードを作ろう
ユーザー認証とページネーションを使ったアプリ
Scaffoldで基本部分を作る
モデルの修正を行なう
コントローラーとビューを修正する
BoardUsersControllerクラス
BoardUsersControllerのビュー
BoardMessagesControllerクラス
レイアウトとスタイルシート
5-5 ActionTextで超ミニブログを作ろう!
3つのテーブルを組み合わせてミニブログ!
Action Textのインストール
モデルを作成しよう
モデルクラスの記述
コントローラーの作成
BlogconfigsControllerクラスの作成
BloggenresControllerクラスの作成
BlogpostsControllerクラスの作成
レイアウトの作成
blogconfigsのテンプレート
bloggenresのテンプレート
BlogpostsControllerクラスのテンプレート
ブログのコントローラーを作る
BlogsControllerクラスの作成
blogsのテンプレートを作成する
blogs.html.erbテンプレートを用意する
スタイルシートの用意
ルーティングの設定
この章のまとめ
これから先は?
Addendum Ruby言語超入門!
A-1 Rubyの値と変数
Rubyコマンドを使おう
Rubyインタープリタ
ソースコードファイルを実行する
文の書き方
値について
変数について
数の計算
値を表示する
A-2 基本構文をマスターしよう
条件分岐の基本「if」
条件ってなに?
多数分岐の「case」
繰り返しの基本「while」
合計を計算する
代入演算子について
A-3 配列とハッシュ
配列ってなに?
配列専用繰り返し構文「for」とは?
範囲演算子について
ハッシュってなに?
ハッシュと「for」構文
eachによる繰り返し処理
A-4 オブジェクトをマスターしよう!
「メソッド」ってなに?
メソッドの引数について
戻り値ってなに?
オブジェクトってなに?
「クラス」=設計図
クラスを作ろう!
initializeメソッドとは?
インスタンス変数とは?
インスタンス変数の問題
アクセサってなに?
クラスメソッドとクラス変数
クラス変数とは?
継承ってなに?
オーバーライドで機能を変更!
この章のまとめ
1-1 Railsを準備しよう
Webの開発って?
開発は大変!
フレームワークの登場!
Railsとは?
RailsとMVC
Railsを使う上で必要なもの
Rubyをインストールする(Windows)
HomebrewでRubyをインストールする(macOS)
Railsをインストールする
1-2 Visual Studio Codeを使おう
開発ツールについて
Visual Studio Codeってなに?
Visual Studio Codeをインストールする(Windows)
Visual Studio Codeを起動しよう
フォルダを開いて編集
入力を支援する機能について
1-3 Railsアプリケーションを作ろう
Railsアプリケーションの作成
サーバーで実行しよう
この章のまとめ
Chapter2 ControllerとViewを使おう!
2-1 Railsアプリの構成
Railsアプリの中身について
「app」フォルダの中身
2-2 コントローラーの基本
コントローラーって?
Helloコントローラーで作られるもの
hello_controller.rbをチェック!
アクションを追加する
コントローラーとアクションのアドレス
ルーティングとroutes.rb
ルーティングとget
HTMLを出力する
クエリーパラメータを使う
2-3 ビューを利用する
テンプレートを作ろう
Bootstrapを使おう
indexメソッドの修正
テンプレートに値を表示する
リダイレクトとパラメータ送付
フォームの送信
InvalidAuthenticityTokenとCSRF対策
CSRF対策を無効にする
2-4 フォームヘルパーを使おう
フォームヘルパーでフォームを作る
フォームヘルパーの働き
フォームヘルパーで属性を指定する
チェックボックスの利用
ラジオボタンを利用する
選択リストを使う
複数選択可なリスト
その他のヘルパー機能
2-5 レイアウトを考える
レイアウトファイルについて
application.html.erb
オリジナルのレイアウトを作ろう
ヘッダー/フッターを作る
コントローラーを修正して完成!
2-6 メッセージボードを作ろう
テキストファイル利用のメッセージボード
コントローラーを作成する
index.html.erbを記述する
msgboardレイアウトを作る
コントローラーを作成する
MyDataクラスについて
データの保存
データの読み込み
1日経過したデータを削除する
GET/POSTとファイルの保存がポイント
この章のまとめ
Chapter3 Modelとデータベースを使おう!
3-1 SQLiteデータベースを使おう
データベースとSQL
モデル(Model)について
SQLiteについて
データベースの設定
SQLiteを使ってみよう
テーブルを作成する
データの保存
全データを表示
データの検索
データベース使いこなしのポイントは?
3-2 モデルの基本を覚えよう
モデルを作ろう!
Personモデルのソースコード
マイグレーションの実行
マイグレーションファイルをチェックする
シードを作る
コントローラーを作成する
indexアクションでデータを表示する
テンプレートを作成する
ルーティングの設定
データベース利用は「モデル」の使い方次第
3-3 CRUDをマスターしよう
IDでデータを検索
show.html.erbテンプレートを作る
index.html.erbを修正しよう
データの新規作成
コントローラーの作成
モデルをフォームに適用する
paramsのパーミッション
データの更新
edit.html.erbの作成
ルーティングを追加する
データの削除
CRUDはデータ操作の基本!
3-4 読書カードを作ろう!
データを蓄積する楽しみ
MVCの作成手順
モデルを作成しよう
コントローラーを作成する
CardsControllerを作成する
index.html.erbを作成する
show.html.erbを作る
add.html.erbを作る
edit.htmlを作る
cards.html.erbを作る
routes.rbを修正する
この章のまとめ
Chapter4 データベースを更に使いこなせ!
4-1 検索をマスターしよう
peopleレイアウトを用意する
stylesheet_link_tagについて
検索ページを用意しよう
whereで検索する
式を書いて検索する
LIKE検索
複数の条件を設定するには?
最初のデータ、最後のデータ
複数のIDを検索する
データの並び順を設定する
結果の一部分を取り出す
4-2 バリデーションをマスターしよう
入力チェックの必要性
バリデーションルールを用意する
アクションでバリデーションチェックする
バリデーションの主なルール
エラーメッセージを表示させよう
日本語のメッセージにしたい!
ビュー側でメッセージを表示するには?
バリデーションルールを自分で作る!
EmailValidatorを使ってみる
4-3 複数モデルの連携
「アソシエーション」ってなに?
Messageモデルを作る
Messageモデルを修正する
Messagesコントローラーを作成する
レイアウトを作成する
テンプレートを用意しよう
has_oneアソシエーション
has_manyアソシエーション
belongs_toアソシエーション
4-4 Scaffoldを使いこなそう
CRUDの基本はほぼ同じ!?
Scaffoldは、Webアプリの土台作り
Scaffoldでデータベースを作ろう!
実行して動作を確認
モデルをチェックする
マイグレーションをチェックする
コントローラーをチェック
indexアクションについて
newアクションについて
editアクションについて
destroyアクションについて
routes.rbをチェックする
Scaffoldは使い方次第!
4-5 Q&Aサイトを作ろう
Q&Aは掲示板よりちょっと難しい!
テーブルを設計する
Scaffoldでベースを生成する
動作を確認しよう
マイグレーションの内容をチェック
モデルを作成する
必要なアクションは?
Question/indexテンプレートの修正
Question/newとformの修正
Question/showとform2の修正
_form2.html.erbを使う
QuestionsControllerを修正する
AnswerControllerを作成する
Q&Aレイアウトを用意する
この章のまとめ
Chapter5 その他に覚えておきたい機能!
5-1 Reactとの連携
フロントエンドフレームワークについて
React用アプリケーションを作成する
indexページを作る
hello_react.jsxをチェック
コンポーネントの属性を使う
サーバーから情報を得るには?
Datumモデルを作成する
Dataコントローラーを作る
ビューテンプレートを作成する
Reactのスクリプトを作成する
Yahoo!ニュース・ヘッドラインを表示しよう!
ajaxアクションを修正する
dummy_data.jsxを修正する
5-2 Deviseでユーザー認証を行なおう
ユーザー認証は難しい!
Deviseアプリケーションを作る
Deviseのインストールと設定
Helloコントローラーを作成する
Helloのページを作成する
ログイン処理をチェック!
ログインの仕組み
Deviseの画面をカスタマイズする
5-3 ページネーション
ページネーションとは?
サンプルアプリを作ろう
設定ファイルを作成する
アクションを修正する
テンプレートを修正する
Kaminari用のタグについて
ナビゲーションの表示スタイル
5-4 新メッセージボードを作ろう
ユーザー認証とページネーションを使ったアプリ
Scaffoldで基本部分を作る
モデルの修正を行なう
コントローラーとビューを修正する
BoardUsersControllerクラス
BoardUsersControllerのビュー
BoardMessagesControllerクラス
レイアウトとスタイルシート
5-5 ActionTextで超ミニブログを作ろう!
3つのテーブルを組み合わせてミニブログ!
Action Textのインストール
モデルを作成しよう
モデルクラスの記述
コントローラーの作成
BlogconfigsControllerクラスの作成
BloggenresControllerクラスの作成
BlogpostsControllerクラスの作成
レイアウトの作成
blogconfigsのテンプレート
bloggenresのテンプレート
BlogpostsControllerクラスのテンプレート
ブログのコントローラーを作る
BlogsControllerクラスの作成
blogsのテンプレートを作成する
blogs.html.erbテンプレートを用意する
スタイルシートの用意
ルーティングの設定
この章のまとめ
これから先は?
Addendum Ruby言語超入門!
A-1 Rubyの値と変数
Rubyコマンドを使おう
Rubyインタープリタ
ソースコードファイルを実行する
文の書き方
値について
変数について
数の計算
値を表示する
A-2 基本構文をマスターしよう
条件分岐の基本「if」
条件ってなに?
多数分岐の「case」
繰り返しの基本「while」
合計を計算する
代入演算子について
A-3 配列とハッシュ
配列ってなに?
配列専用繰り返し構文「for」とは?
範囲演算子について
ハッシュってなに?
ハッシュと「for」構文
eachによる繰り返し処理
A-4 オブジェクトをマスターしよう!
「メソッド」ってなに?
メソッドの引数について
戻り値ってなに?
オブジェクトってなに?
「クラス」=設計図
クラスを作ろう!
initializeメソッドとは?
インスタンス変数とは?
インスタンス変数の問題
アクセサってなに?
クラスメソッドとクラス変数
クラス変数とは?
継承ってなに?
オーバーライドで機能を変更!
この章のまとめ