Rails-tutorialの自分用まとめ1(主に演習が基本)

Rails チュートリアル 要点だけまとめようあとは演習について

1章でhelloアプリ
2章でtoyアプリ scaffoldを使う
3章からテスト駆動開発、統合テスト

演習:現時点でのRailsの最新バージョンはいくつですか?

v7.0.1

1.2.2 Railsをインストールする

printf "install: --no-document \nupdate: --no-document\n" >> ~/.gemrc

gem install rails -v 5.1.6

cd
mkdir environment
cd environment/
rails _5.1.6_ new hello_app

(app/assetsディレクトリについて、アセットパイプラインによって、
CSSやJavaScriptファイルなどのアセット (資産)を簡単に編成したりデ
プロイすることができる。

app/          モデル、ビュー、コントローラ、ヘルパーなどを含む主要なアプリケーションコード
app/assets    アプリケーションで使うCSS (Cascading Style Sheet)
、JavaScriptファイル、画像などのアセット
bin/          バイナリ実行可能ファイル
config/       アプリケーションの設定
db/           データベース関連のファイル
doc/          マニュアルなど、アプリケーションのドキュメント
lib/          ライブラリモジュール
lib/assets    ライブラリで使うCSS (Cascading Style Sheet)、JavaScriptファイル、画像などのアセット
log/          アプリケーションのログファイル
public/       エラーペ-ジなど、一般(Webブラウザなど)に直接公開する
データ
bin/rails     コード生成、コンソールの起動、ローカルのWebサーバ
の立ち上げなどで使うRailsスクリプト
test/         アプリケーションのテスト
tmp/          一時ファイル
vendor/       サードパーティのプラグインやgemなど
vendor/assets サードパーティのプラグインやgemで使うCSS、
JavaScriptファイル、画像などのアセット
README.md     アプリケーションの簡単な説明
Rakefile      rakeコマンドで使えるタスク
Gemfile       このアプリケーションに必要なGemの定義ファイル
Gemfile.lock  アプリケーションで使われるgemのバージョンを
確認するためのリスト
config.ru     Rackミドルウェア用の設定ファイル
.gitignore    Gitに取り込みたくないファイルを指定するためのパターン

Gemfileを書き換える表を参照しよう!

Gemfile

source 'https://rubygems.org'

gem 'rails',        '5.1.6'
gem 'puma',         '3.9.1'
gem 'sass-rails',   '5.0.6'
gem 'uglifier',     '3.2.0'
gem 'coffee-rails', '4.2.2'
gem 'jquery-rails', '4.3.1'
gem 'turbolinks',   '5.0.1'
gem 'jbuilder',     '2.6.4'

group :development, :test do
  gem 'sqlite3',      '1.3.13'
  gem 'byebug', '9.0.6', platform: :mri
end

group :development do
  gem 'web-console',           '3.5.1'
  gem 'listen',                '3.1.5'
  gem 'spring',                '2.0.2'
  gem 'spring-watcher-listen', '2.0.1'
end

Gemのインストール

cd hello_app/
bundle install
rails s

HelloWorld!を表示させる

app/controllers/application_controller.rbで以下のような記述
class ApplicationController < ActionController::Base
  protect_from_forgery with: :exception

  def hello
    render html: "hello, world!"
  end
end

config/routes.rbに以下のような記述をする

Rails.application.routes.draw do
  root 'application#hello'
end

演習

1:「hello, world!」の代わりに「hola, mundo!」と表示されるようにするのは
どうすればいいか説明せよ

app/controllers/application_controller.rbの

render html: “hello, world!”

render html: “hola, mundo!”に変更する

2:「¡Hola, mundo!」にはスペイン語特有の逆さ感嘆符「¡」が含まれており
「¡」文字をMacで表示するには、Optionキーを押しながら1キーを押します。

3:helloアクションを参考にして、2つ目のアクションgoodbyeを追加せよ。

ルートルーティングの割り当て先をhelloアクションからgoodbyeアクションに変更
なおこのアクションは、「goodbye, world!」というテキストを表示。

答え:config/routes.rbに以下のような記述をする

Rails.application.routes.draw do
  root 'application#goodbye'
end

app/controllers/application_controller.rbを以下のように記述

class ApplicationController < ActionController::Base
 protect_from_forgery with: :exception
 
  def goodbye
    render html: "goodbye, world!"
  end
 end

Gitbucketの使い方と初期設定。ルートディレクトリにて以下をコマンド

git config --global user.name "akane"
git config --global user.email bokou31@example.com
git init
git add -A
git commit -m "Initialize repository"
cd /home/ec2-user/environment/hello_app
git remote add origin git@bitbucket.org:ユーザー名/hello_app.git
git push -u origin --all

できなければ

git remote add origin https://ユーザー名@bitbucket.org/ユーザー名/yuki.git
git remote set-url origin https://ユーザー名@bitbucket.org/ユーザー名/yuki.git
git checkout -b modify-README
git branch
master
* modify-README

Gemfileに以下のような記述を追加または変更をします

source 'https://rubygems.org'

gem 'rails', '5.1.6'
gem 'puma', '3.9.1'
gem 'sass-rails', '5.0.6'
gem 'uglifier', '3.2.0'
gem 'coffee-rails', '4.2.2'
gem 'jquery-rails', '4.3.1'
gem 'turbolinks', '5.0.1'
gem 'jbuilder', '2.7.0'

group :development, :test do
  gem 'sqlite3', '1.3.13'
  gem 'byebug', '9.0.6', platform: :mri
end

group :development do
  gem 'web-console', '3.5.1'
  gem 'listen', '3.1.5'
  gem 'spring', '2.0.2'
  gem 'spring-watcher-listen', '2.0.1'
end

group :production do
  gem 'pg', '0.20.0'
end

Gemをインストールします。

bundle install --without production
#コミット
git commit -a -m "Update Gemfile for Heroku"
#Herokuをインストールするコマンド
source <(curl -sL https://cdn.learnenough.com/heroku_install)
#Herokuログイン
heroku login --interactive
heroku keys:add
heroku create
git push heroku master

演習

1:heroku helpコマンドを実行し、Herokuコマンドの一覧を表示してみてください。
Herokuアプリのログを表示するコマンドはどれですか?

herokuがインストールされてない時
curl -sL https://cdn.learnenough.com/heroku_install
heroku logs

2:上の演習で見つけたコマンドを使って、Herokuアプリの最近のログ (log)を調べてみて直近に発生したイベントは何でしたか?

答え:Herokuにpushした

1章のまとめ

1:Ruby on Railsとは、Web開発のためのフレームワークで、Rubyによって作られた。

2:事前設定済みのクラウド環境(例:Cloud9など)を利用することで、Railsのインストール、アプリケーションの生成、生成されたファイルの編集を簡単に行うことができる。

3:Railsにはrailsという名前のコマンドラインコマンドがあり、
rails newで新しいアプリケーションを生成したり、
rails serverでローカルサーバーを実行したりできる。

4:コントローラのアクションを追加したり、ルートルーティングを変更したりするだけで「hello, world」アプリケーションを作成できる。

5:Gitによるバージョン管理を導入し、Bitbucketの非公開リポジトリにプッシュする理由は、データの喪失を防止し、他の開発者との共同作業を行えるようにするため。

6:作成したアプリケーションをHerokuの本番環境にデプロイした。

その2に続く

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です