LoginSignup
0
0

More than 3 years have passed since last update.

Ruby on Rails5 速習実践ガイド5.2対応 Chapter2

Posted at

Chaptrt2 Railsアプリケーションをのぞいてみよう

Windows10の環境構築
実習でHyperVマネージャーにより、仮想環境はすでにあり。
Ubuntu 18.04.3をインストール
rbenv 1.1.2-30-gc879cb0 Gitを使ってGitHubからをインストール。
Ruby 2.5.1 インストール
Rails インストール
Node.js のインストール

JavaScriptを用いる場合、効率よく配信するためにJavaScriptを圧縮する機能が備わっているが、そのためにJavaScriptランタイムが必要となるためにインストール。

PostgreSQL をインストールしセットアップ
PostgreSQLを起動。
 sudo service postgresql start

 
 sudo su postgres -c 'createuser -s {Ubuntuのログインユーザ}'
 を打つと、以下のエラーが出た。

 psql: FATAL: role “postgres” does not exist
 {}無しでUbuntuのログインユーザー名を記載したらすんなり通りました。

scaffoldを使ってscaffold_appという名前で「ユーザー管理アプリケーション」をRailsのコマンドで自動生成させる。
 rails new scaffold_app -d postgresql

 rails new コマンドはRailsアプリケーションのひな型を生成。
アプリケーションの名前をscaffold_appと指定。
scaffold_appディレクトリと関連ファイルが生成されて、ログ出力される。
この後 bundle installが自動的に実行されて、Railsの実行に必要なgemがインストールされる。
データベースの作成。config/databese.ymlというファイルの定義をもとに。

bin/rails s db:create

「rails」ではなく「bin/rails」で、アプリケーションのルートディレクトリ直下のbinディレクトリにあるrailsというスクリプトを呼び出している。Gemfileどおりのgemを利用できる環境上でrailsコマンドを実行できる。
railsサーバー起動
 bin/rails s

railsは標準のHTTPサーバとしてPumaを採用。

WEBブラウザでサーバーの起動を確認
 アドレスバーにhttp://localhost:3000/を入力。

ユーザー管理機能のひな型を作る
「ユーザー」に関するscaffoldを自動生成。
 bin/rails generate scaffold user name:string address:string age:integer

ユーザー管理機能に使うテーブルをデータベースに作成。
 bin/rails db:migrate

ユーザー一覧画面を表示
 http://localhost:3000/users
WEBブラウザへ上のURLを入力してアクセス。

重要だと思ったポイント

  • ユーザーを管理するために必要な機能「CRUD」が生成されている。  「作成(create)」「読み出し(read)」「更新(update)」「削除(delete)」
  • コードの通り道 Railsアプリケーションは、MVC(モデル・ビュー・コントローラ)という考え方で構成。 コントローラーが呼ばれる。コントローラーにはリクエストに対する処理が書かれている「アクション」と呼ばれるメソッドが定義(一覧画面にアクセスした際はidnexアクション)されている。
0
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
0
0