今年は6/26からツールドフランスが始まります!
ニコニコ生放送で第一ステージ(6/26)と山岳ステージ(7/4)見るよ(´ω`*)
ツールドフランスというのは簡単にいうとデカい自転車のレースですね。
ヨーロッパの風情ある町・広大な平原・急勾配の山道を走るので僕はほぼ観光みたいな感じで見てます。歴史的建造物の紹介や地元の人たちの個性的な応援もおもしろい。
もちろんレースが動く瞬間や、ゴール前のスプリント、下り坂のスピード感はテンション上がりますよ!長時間のレースなのでそれ以外はまったりですけどね。
ちなみに僕は自転車に詳しいわけではなく、有力選手もそんなにわかりません。そんなんでも楽しめますw
気が向いたら気分転換にチラ見してください(´ω`*)
39日目の勉強内容
勉強の方はrails routesでHTTPメソッドやパスの確認に慣れてきた感じ。
やっぱ繰り返し実装して経験するのが大事なんですね。
バリデーション
テーブルにデータを保存するときに制約を設けることをバリデーションという。モデルに記述する。
下記はnameの値が空白だと登録できませんよ、という制約。
validates :name, presence: true
deviseには最初からメールアドレスやパスワードのバリデーションが設定されているが、
自分で追加したnameカラムには新たにバリデーションを設定する必要がある。
ところで、migrationファイルにも「null: false」でNOTNULL制約を記述しているんだけど、バリデーションとの違いがあるみたい。
- migrationファイルの制約はデータベースの制約。また、空文字” “は保存できてしまう。
- バリデーションはrailsの制約。Webからのデータ入力制限。これだけでは直接テーブルの書き換えを防げない。
なのでmigrationファイルとバリデーション両方で制約を設定する必要がある(`・ω・´)
またバリデーションを設定すればerrors.fullmessagesでエラー内容を取り出せる。(テストで使用した!)
コメント