loading...
Cover image for Firebase with Nuxt ③FireStore編

Firebase with Nuxt ③FireStore編

ryunishimura profile image Ryu Nishimura Updated on ・1 min read

更新していくよ

一部更新

    db
      .collection('users')
      .doc(payload.uid)
      .update({ datum: payload.datum })
      .then(() => {
        commit('setDatum', payload.datum)
      })
Enter fullscreen mode Exit fullscreen mode

リレーション的なもの

データベースの構造化

  • データをネストしない
  • データ構造を平坦化する
  • スケーラブルなデータを作成する

ユーザーの履歴

const uid = this.user.uid
const date = new Date()
const userRef = db.collection('users').doc(uid)
userRef.get().then(user => {
  if (user.exists) {
    userRef.collection('results').doc().set({ date: date, total: 2, correct: 1 })
  }
})
Enter fullscreen mode Exit fullscreen mode

subCollectionにした理由は、

  • doc.data()で取得されないから
  • 別の階層でのcollectionで保持するのは面倒臭そう

Tips

  • Number型を入れる場合、もしくはString例えば、'1'1のようなものは、明示的に変換しておく

Discussion

pic
Editor guide