TYMtwilight / tsugumon

地元企業と移住希望者とを継ぐ求人支援アプリケーション👔
https://tsugumon-tymtwilight.vercel.app/
1 stars 0 forks source link

🐛 optionコレクションのエラー問題を解決しました #361

Closed TYMtwilight closed 1 year ago

TYMtwilight commented 1 year ago

🔎分析結果

「事業主」「職種」「住所」のデータはFIrestoreのoptionコレクションのドキュメントのフィールドに格納されているため、これらの値が登録されないのは、optionコレクションのセキュリティルールに関係してくると予想。 optionコレクションのセキュリティルールは以下のとおりとなっており、ルールの記述自体におかしなところはありませんでした。

// optionコレクション
    match /option/{userId}{
        allow read: if request.auth != null;
      allow update, delete: if request.auth != null
        && request.auth.uid == request.resource.data.uid;
      allow create: if request.auth != null;
    }

つぎにFiresotoreのoptionコレクションを参照したところ、以下のとおり、エラーが起きているユーザーのドキュメントには「uid」フィールドが登録されていない事実が判明しました。

スクリーンショット 2022-12-01 18 23 48 スクリーンショット 2022-12-01 18 24 02

したがって、今回のエラーはコードの内容の不備によるものではなく、Firestoreのドキュメントの欠陥によるものだと思われます。

動作の確認

  1. 「minami_farm」のアカウントでログイン

  2. プロフィール編集画面に移動

  3. 「事業主」「職種」「住所」の情報を入力し、「登録する」ボタンをクリック

    スクリーンショット 2022-12-01 18 36 37
  4. プロフィール表示画面に、3の工程で登録した情報が表示されることを確認

    スクリーンショット 2022-12-01 18 36 55
vercel[bot] commented 1 year ago

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Updated
tsugumon ✅ Ready (Inspect) Visit Preview Dec 1, 2022 at 9:42AM (UTC)