---
# System prepended metadata

title: 1/30㈭ 日報

---

# 1/30㈭ 日報

## やること/やったこと
- [x] プラン申込のPR修正
  - [x] ログイン状況以外のバリデーションの検証メソッドをモデルに移行
  - [x] 上記メソッドのテストを追加
  - [x] トラベルかECかどちらのユーザー登録・ログイン・ログアウトかの判定処理の変更
referrerで判断してたけど、100%確実ではないので、parameterを渡す方法に変更した
  - [x] 管理画面のフォームを修正
  - [x] その他レビュー箇所の調査と返信
  - [x] 未翻訳箇所を探す。i18nの整理
  - [x] migrationファイル名がおかしかったので修正
  - [x] カラム名変更。それに伴う各所コードの変更
  - [x] 未翻訳箇所の翻訳依頼
  - [x] 翻訳反映
  - [x] プランの金額や猶予日などにバリデーションの追加
  - [x] 日程選択をdate_fieldに変更
  - [x] バリデーションエラーメッセージが一度表示されると消えなかったバグを修正
- [x] 今は使わなくなったTravelPlanPaymentの削除
  - [x] コードを削除
  - [x] tableをdropするmigrationを追加
  - [x] PR

## 学んだこと
個別の属性に関連するエラーメッセージを追加する代りに、オブジェクトの状態全体に関連するエラーメッセージを`errors[:base]`に追加することもできる。
```ruby
person.errors.add(:base, :name_or_email_blank,
  message: "either name or email must be present")
person.errors.messages
# => {:base=>["either name or email must be present"]}
person.errors.details
# => {:base=>[{error: :name_or_email_blank}]}
```
https://railsguides.jp/active_record_validations.html#errors-base

## 困っていること
進捗が遅い？

## 明日やること
- (must)プラン申込のPRの残り
- (must)大人+子どもの人数が最少催行人数以上でないと申し込めない
  - バリデーション追加
  - バリデーションのテスト
  - エラーメッセージを作って翻訳
  - リクエストのテスト
- プランの決済方法選択
## 所感
コード書き始めると早いけど、コード書くまで調べたり考えたりする時間が長いし、その時間を見積もるのが難しい🤔
仕様漏れもたまにあるから、どっかにドキュメント書くかテスト先に書いたほうがいいかも。