0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Ruby on Railsのチュートリアル ~第7章 ユーザー登録~

Posted at

はじめに

webアプリケーションを作るための学習記録
(マッチングアプリを作る予定)

こちらのチュートリアルを片っ端から進めていく
【Ruby on Rails チュートリアル】
https://railstutorial.jp/

第7章 ユーザー登録

まとめ

  • debugメソッドを使うことで、役立つデバッグ情報を表示できる
  • Sassのmixin機能を使うと、CSSのルールをまとめたり他の場所で再利用できるようになる
  • Railsには標準で3つ環境が備わっており、それぞれ開発環境 (development)、テスト環境 (test)、本番環境 (production)と呼ぶ
  • 標準的なRESTfulなURLを通して、ユーザー情報をリソースとして扱えるようになった
  • Gravatarを使うと、ユーザーのプロフィール画像を簡単に表示できるようになる
  • form_forヘルパーは、Active Recordのオブジェクトに対応したフォームを生成する
  • ユーザー登録に失敗した場合はnewビューを再描画するようにした。その際、Active Recordが自動的に検知したエラーメッセージを表示できるようにした
  • flash変数を使うと、一時的なメッセージを表示できるようになる
  • ユーザー登録に成功すると、データベース上にユーザーが追加、プロフィールページにリダイレクト、ウェルカムメッセージの表示といった順で処理が進む
  • 統合テストを使うことで送信フォームの振る舞いを検証したり、バグの発生を検知したりできる
  • セキュアな通信と高いパフォーマンスを確保するために、本番環境ではSSLとPumaを導入した

所感

・RESTアーキテクチャを使うと、どのHTTPリクエストでどのURLに飛ぶと、どのコントローラのどのメソッドを呼び出すか、ということが標準的に定義される。
コントローラのメソッドは、どのテンプレートを呼びだすかデフォルトで定義してくれる。
よって、
1.あるHTTPリクエストで
2.あるURLにアクセスすると
3.あるコントローラの
4.あるメソッドを呼び出して
5.それに対応したテンプレートを返す

・paramsは画面遷移時に渡すパラメータのことか

途中参考にしたページ

・ビューの作成とデータの受け渡し
https://www.javadrive.jp/rails/ini/index5.html#section3
アクションと同名のテンプレートを呼び出すようにできてる

・【Railsメモ】assert_selectについて
https://qiita.com/TakahitoNakashima/items/b439126cd1ee302586d7

・【Rails】assert_notについて
https://teratail.com/questions/138763

・Rails チュートリアル 【初心者向け】 テストを10分でおさらいしよう!
https://qiita.com/duka/items/2d724ea2226984cb544f

・assert_selectの使い方
https://zariganitosh.hatenablog.jp/entry/20080405/1207455670

使用したコマンド

git checkout -b sign-up

rails console test
Rails.env
Rails.env.test?
rails server --environment production
rails db:migrate RAILS_ENV=production
heroku run rails console

puts user.attributes.to_yaml
y user.attributes

User.count
User.first

touch app/views/users/show.html.erb
user = User.first
user.update_attributes(name: "Example User",
email: "example@railstutorial.org",
password: "foobar",
password_confirmation: "foobar")

mkdir app/views/shared
touch app/views/shared/_error_messages.html.erb

rails generate integration_test users_signup

rails db:migrate:reset

git add -A
git commit -m "Finish user signup"
git checkout master
git merge sign-up

rails test
git add -A
git commit -m "Use SSL and the Puma webserver in production"
git push
git push heroku
heroku run rails db:migrate

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?