ぞえの技術めも

Ruby on Rails勉強中

2016-01-01から1年間の記事一覧

【62日目】【1日20分のRailsチュートリアル】【第7章】ユーザー登録失敗時のテストを生成する

Ruby on Railsチュートリアル(第3版) 今日は「7.3.4 失敗時のテスト」から。 7.3.4 失敗時のテスト Railsではフォーム用のテストを書くことができ、こういったプロセスを自動化することができます。 本項では、無効な送信をしたときの正しい振る舞いについて…

【61日目】【1日20分のRailsチュートリアル】【第7章】ユーザー登録のエラーメッセージを表示する

Ruby on Railsチュートリアル(第3版) 今日は「7.3.3 ユーザー登録のエラーメッセージ」から。 7.3.3 ユーザー登録のエラーメッセージ ユーザー登録に失敗した場合の最後の手順として、問題が生じたためにユーザー登録が行われなかったということをユーザーに…

【60日目】【1日20分のRailsチュートリアル】【第7章】Strong parametersで悪意のあるアクセスを防ぐ

Ruby on Railsチュートリアル(第3版) 今日は「7.3.2 Strong parameters」から。 7.3.2 Strong parameters @user = User.new(params[:user]) # 実装は終わっていないことに注意! リスト7.16のコメントと、上の再録コメントでも重ねて指摘しているように、この…

【59日目】【1日20分のRailsチュートリアル】【第7章】ユーザー登録失敗

Ruby on Railsチュートリアル(第3版) 今日は「7.3 ユーザー登録失敗」から。 7.3 ユーザー登録失敗 無効なデータ送信を受け付けるユーザー登録フォームを作成し、ユーザー登録フォームを更新してエラーの一覧を表示します。 ユーザー名が空白になってないか…

【58日目】【1日20分のRailsチュートリアル】【第7章】ユーザー登録用のフォームを作成する

Ruby on Railsチュートリアル(第3版) 今日は「7.2.1 form_forを使用するから。 7.2.1 form_forを使用する ユーザー登録ページで重要な点は、ユーザー登録に欠かせない情報を入力するためのformです。 formタグのことですね。 これを行うには、Railsでform_fo…

【57日目】【1日20分のRailsチュートリアル】【第7章】プロフィールページのレイアウト調整とユーザー登録フォーム作成の準備

Ruby on Railsチュートリアル(第3版) 今日は「Gravatar画像とサイドバー」のレイアウト整えるところから。 7.1.4 Gravatar画像とサイドバー 図7.1のモックアップに近づけるために、ユーザーのサイドバーの最初のバージョンを作りましょう。 プロフィール画像…

【56日目】【1日20分のRailsチュートリアル】【第7章】デバッガーの使い方とGravatar画像の表示

Ruby on Railsチュートリアル(第3版) 今日は「7.1.3 デバッガー」から。 7.1.3 デバッガー Rails 4.2からは、byebug gemを使ってもっと直接的にデバッグできるようになりました (リスト3.2)。 へー。byebugはもうGemfileに書いてるのですぐ使えるらしい。 sh…

【55日目】【1日20分のRailsチュートリアル】【第7章】ユーザー情報を仮ビューに表示する

Ruby on Railsチュートリアル(第3版) 今日は「7.1.2 Usersリソース」のユーザー情報を表示する仮ビューを作成するところから。 7.1.2 Usersリソース ユーザーを表示するために、標準的なRailsの場所を使用することにします。app/views/users/show.html.erbで…

【54日目】【1日20分のRailsチュートリアル】【第7章】デバッグ出力を整形、Usersリソースを設定

Ruby on Railsチュートリアル(第3版) 今日は「7.1.1 デバッグとRails環境」のデバッグ出力をきれいにするところから。 7.1.1 デバッグとRails環境 デバッグ出力をきれいに整形するために、第5章で作成したカスタムスタイルシートをリスト7.2のように追加しま…

【53日目】【1日20分のRailsチュートリアル】【第7章】開発環境でのデバッグの準備

Ruby on Railsチュートリアル(第3版) 今日は「第7章 ユーザー登録」から。 遂に後半戦! 第7章 ユーザー登録 Userモデルができあがったので、いよいよユーザー登録機能を追加しましょう。 第6章でユーザーを登録する中身を作ったので第7章ではUIメイン、かな…

【52日目】【1日20分のRailsチュートリアル】【第6章】演習の2.と3.

Ruby on Railsチュートリアル(第3版) 今日は「6.5 演習」の2.から。 6.5 演習 before_saveコールバック内でemail.downcase!と書き、email属性を直接変更してもよいことを、テストスイートを走らせて確認してください (リスト6.42のように書いてもよいことを…

【51日目】【1日20分のRailsチュートリアル】【第6章】第6章のコミットと演習の1.

Ruby on Railsチュートリアル(第3版) 今日は「6.4 最後に」から。 6.4 最後に Gitを使用している方は、しばらくコミットしていなかったのであれば、この時点でコミットしておくのがよいでしょう。 コミットしてないのでコミットします。 $ bundle exec rake …

【50日目】【1日20分のRailsチュートリアル】【第6章】ユーザーの作成とパスワード認証

Ruby on Railsチュートリアル(第3版) 今日は「6.3.4 ユーザーの作成と認証」から。 6.3.4 ユーザーの作成と認証 今回はRailsコンソールを使ってユーザーを手動で作成することにしましょう。 6.1.3で説明したcreateを使いますが、後々実際のユーザーを作成す…

【49日目】【1日20分のRailsチュートリアル】【第6章】Userモデルへのセキュアなパスワードとパスワードの最小文字数を設定する

Ruby on Railsチュートリアル(第3版) 今日は「6.3.2 ユーザーがセキュアなパスワードを持っている」から。 6.3.2 ユーザーがセキュアなパスワードを持っている Userモデルにpassword_digest属性を追加し、Gemfileにbcryptを追加したことで、ようやくUserモデ…

【48日目】【1日20分のRailsチュートリアル】【第6章】セキュアなパスワードを追加する準備

Ruby on Railsチュートリアル(第3版) 今日は「6.3 セキュアなパスワードを追加する」から。 6.3 セキュアなパスワードを追加する セキュアパスワードという手法では、各ユーザーにパスワードとパスワードの確認を入力させ、それを (そのままではなく) ハッシ…

【47日目】【1日20分のRailsチュートリアル】【第6章】データベースにメールアドレスの一意性を設定する

Ruby on Railsチュートリアル(第3版) 今日は「6.2.5 一意性を検証する」のデータベースにも一意性の設定するところから。 6.2.5 一意性を検証する 実は、この問題はデータベースレベルでも一意性を強制するだけで解決します。 具体的にはデータベース上のema…

【46日目】【1日20分のRailsチュートリアル】【第6章】ユーザーのメールアドレスの一意性を検証する

Ruby on Railsチュートリアル(第3版) 今日は「6.2.5 一意性を検証する」から。 6.2.5 一意性を検証する メールアドレスの一意性を強制するために (ユーザー名として使うために)、validatesメソッドの:uniqueオプションを使います。 ふむふむ。 一意性のテス…

【45日目】【1日20分のRailsチュートリアル】【第6章】ユーザー情報の文字列の長さとフォーマットを検証する

Ruby on Railsチュートリアル(第3版) 今日は「6.2.3 長さを検証する」から。 6.2.3 長さを検証する 最長のユーザー名の長さに科学的な根拠はありませんので、単に50を上限として手頃な値を使うことにします。 問題になる可能性もあるので長すぎるメールアド…

【44日目】【1日20分のRailsチュートリアル】【第6章】ユーザーの有効性と存在性の検証

Ruby on Railsチュートリアル(第3版) 今日は「6.2 ユーザーを検証する」から。 6.2 ユーザーを検証する 要するに、nameとemailにあらゆる文字列を許すのは避けるべきです。これらの属性値には、何らかの制約を与える必要があります。 何でもありだといざ運用…

【43日目】【1日20分のRailsチュートリアル】【第6章】ユーザーオブジェクトの検索と更新

Ruby on Railsチュートリアル(第3版) 今日は「6.1.4 ユーザーオブジェクトを検索する」から。 日をまたいで学習するとRailsコンソールを起動し直さないといけないのでめんどくさいことに気付いた。 6.1.4 ユーザーオブジェクトを検索する 本編の前に準備。Ra…

【42日目】【1日20分のRailsチュートリアル】【第6章】ユーザーオブジェクトを作成

Ruby on Railsチュートリアル(第3版) 今日は「6.1.2 modelファイル」から。 6.1.2 modelファイル 生成したUserモデルのコード確認。 ActiveRecord::Baseクラスを継承している。 app/models/user.rb class User < ActiveRecord::Base end 6.1.3 ユーザーオブ…

【41日目】【1日20分のRailsチュートリアル】【第6章】Userモデルをデータベースに移行

Ruby on Railsチュートリアル(第3版) 今日から第6章! 「第6章 ユーザーのモデルを作成する」から。 第6章 ユーザーのモデルを作成する 本章では、一番重要なステップであるユーザー用のデータモデルの作成と、データを保存する手段の確保について学んでいき…

【40日目】【1日20分のRailsチュートリアル】【第5章】演習の3.

Ruby on Railsチュートリアル(第3版) 今日は「5.6 演習」の3.から。 5.6 演習 3. リスト5.36で示すように、Applicationヘルパーで使っているfull_titleヘルパーを、test環境でも使えるようにすると便利です。 (中略) たとえばベースタイトルに“Ruby on Rail…

【39日目】【1日20分のRailsチュートリアル】【第5章】演習の1.と2.

Ruby on Railsチュートリアル(第3版) 今日は「5.6 演習」から。 5.6 演習 演習とチュートリアル本編の食い違いを避ける方法については、3.6のトピックブランチの演習に追加したメモをご覧ください。 演習用にブランチ作ります。 $ git checkout master $ git…

【38日目】【1日20分のRailsチュートリアル】【第5章】ユーザー登録用URLの変更と5章の内容をコミット&push&デプロイ

Ruby on Railsチュートリアル(第3版) 今日は「5.4.2 ユーザー登録用URL」から。 5.4.2 ユーザー登録用URL 5.4.1のコードにより、新規ユーザー用の動作するページが/users/new にできました。 ここで表5.1を思い出していただきたいのですが、URLは/users/new…

【37日目】【1日20分のRailsチュートリアル】【第5章】リンクのテストとUserコントローラの作成

Ruby on Railsチュートリアル(第3版) 今日は「5.3.4 リンクのテスト」から。 5.3.4 リンクのテスト レイアウト内のいくつかのリンクを埋めることができたので、これらのリンクが正しく動いているかどうかチェックするテストを書いてみましょう。 リンクもテ…

【36日目】【1日20分のRailsチュートリアル】【第5章】Cotactページの作成とリンクの追加

Ruby on Railsチュートリアル(第3版) 今日は「5.3.1 Contactページ」から。 5.3.1 Contactページ まずContactページのテストを追加する。 第3章の演習で追加してたのでさくっと追加します。 test/controllers/static_pages_controller_test.rb test "should …

【35日目】【1日20分のRailsチュートリアル】【第5章】Sassの変数とレイアウトのリンク

Ruby on Railsチュートリアル(第3版) 今日は「5.2.2 素晴らしい構文を備えたスタイルシート」の「変数」から。 5.2.2 素晴らしい構文を備えたスタイルシート 変数 Sassでは、冗長なコードを削除し、より自由な表現を可能にするために、変数が定義できるよう…

【34日目】【1日20分のRailsチュートリアル】【第5章】SassとAsset Pipelineの解説読む

Ruby on Railsチュートリアル(第3版) 今日は「5.2 SassとAsset Pipeline」から。 5.2 SassとAsset Pipeline 5.2.1 Asset Pipeline Rails3.1以降では、静的ファイルを目的別に分類する、標準的な3つのディレクトリが使用されるようになりました。最新のRails…

【33日目】【1日20分のRailsチュートリアル】【第5章】レイアウトでパーシャルを利用する

Ruby on Railsチュートリアル(第3版) 今日は「5.1.3 パーシャル (partial)」から。 5.1.3 パーシャル (partial) パーシャル (partial) を追加すればレイアウトを見やすくできるそう。 機能単位でパーシャルにまとめる感じかな…? まずshimパーシャルを作成。…