Closed TYMtwilight closed 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」フィールドが登録されていない事実が判明しました。
したがって、今回のエラーはコードの内容の不備によるものではなく、Firestoreのドキュメントの欠陥によるものだと思われます。
課題が達成されたため、イシューをクローズします😉
問題の内容
企業ユーザーが「事業主」「職種」「住所」のデータを編集しても、セキュリティルールに抵触して、Firebaseに保存されない問題が発生しています。
実行環境
使用機器;MacBook Air (Retina, 13-inch, 2019) OS:Mac OS Monterey バージョン12.6 ブラウザ:Chrome バージョン: 107.0.5304.121(Official Build) (x86_64)
再現手順
2.「事業主」「職種」「住所」の項目に入力し、「登録する」ボタンをクリックする
3.プロフィール表示画面を確認すると、登録したはずの「事業主」「職種」「住所」が空欄となる不具合が発生している
4.プロフィール表示画面でコンソールを確認すると
と表示されている