LoginSignup
1
0

More than 5 years have passed since last update.

railsチュートリアル 第三章

Last updated at Posted at 2019-03-22

はじめに

railsチュートリアルで理解しにくいところや、詰まったところを書いていく記事になります。
なので、手順を示す記事とはなっていません。

Gitリポジトリの追加

$ git init

このコマンドはGitのリポジトリを新たに作成するためのもの。
また、既にあるリポジトリを再初期化するためのもの。
ディレクトリを指定しなければ、コマンドを実行したワーキング・ディレクトリの直下にリポジトリのための「.git」というサブディレクトリが作成される。

$ git add -A

git add は、作業ディレクトリ内の変更をステージングエリアに追加するコマンド。
このコマンドは、個々のファイルのアップデート内容を次回コミット対象とするよう、Git に指示する。
ただし、実際には git add コマンドだけではリポジトリに何も影響しない。
git commit コマンドを実行するまで、変更が実際に記録されることはない。

$ git commit -m "Initialize repository"

git commitを利用すればファイルの変更をgitレポジトリに保存することができる。
-m はコミットにメッセージをつけるオプションとなる。
また他にも -a は「全てを変更する」を意味するオプションとなる。

herokuへのデプロイ

$ git remote add origin git@bitbucket.org:ユーザー名/sample_app.git
$ git push -u origin --all 

一つ目のコマンドで、リモートリポジトリを追加し、
二つ目のコマンドでローカルのmasterブランチをリモートリポジトリherokuへpushする

ブランチの切り替え

Gitを使う場合は、masterブランチでずっと作業するのではなく、その都度トピックブランチを作成して作業するのがよい習慣、とのこと。

$ git checkout -b static-pages

コマンドを打つことによって、トピックブランチをチェックアウトすることができる。

また「-b」オプションを指定することで、ブランチの作成とチェックアウトを同時に行うことができる。

コントローラの作成と削除

作成は以下のようなコマンドとなる。

 $ rails generate controller StaticPages(controller) home(action) help(action)

作ったが名前を消したい、作り直したいということであれば、
以下のコマンドで、コントローラを消すことができる。

 $ rails destroy  controller StaticPages home help

generateの部分をdestroyに変更すればいい。

テスト

何らかの変更を行う際には、常に「自動化テスト」を作成して、機能が正しく実装されたことを確認する習慣をぜひ身に付けましょう。とのこと。
個人的にrailsチュートリアルではテストを理解する(自分で書くこと)に苦労しそう、、

テストファイルはrails generate contorollerコマンドを打った時点で作成されているので、それを使用する。
例:

static_pages_controller_test.rb
test "should get home" do
  get static_pages_home_url
  assert_response :success
end

これをわかりやすくすると、

「Homeページのテスト。GETリクエストをhomeアクションに対して発行 (=送信) せよ。そうすれば、リクエストに対するレスポンスは[成功]になるはず」

となる。

また、assert_selectメソッドでは、特定のHTMLタグが存在するかどうかをテストする。
例:

assert_select "title", "Home | Ruby on Rails Tutorial Sample App"

上のセレクタは、

タグ内に「Home | Ruby on Rails Tutorial Sample App」という文字列があるかどうかをチェックする。

終わり

次↓
https://qiita.com/jonnyjonnyj1397/items/922b64ec6fa95f370586

1
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
1
0