2019年9月3日 星期二

用 Firebase cloud FireStore 建立族譜

Firestore 的路徑必須用 collection/document ... 互相穿插的命名方式, 雖然奇怪, 卻很適合用來撰寫族譜, 例如將祖先姓名當 id 命名 Documnet, 後續用 n 世代命名插入 Collection. Collection 用數字或英文字母當 id 來命名,好處是順便當作索引依據, 另一方面當要在 Firebase console 刪除整個 Collection 時比較方便, 因為刪除 Collection 要做確認的動作, 系統會要求輸入正確 id 才可刪除, 至於刪除 Document 就不用. 祖先姓名本身就是一組識別碼, 剛好用作 Document id, 通常為了資料庫管理方便, 可以將族譜統一放在根目錄的 Genealogy 底下, 因為根目錄都是以 Collection 為起點, 因此插入一個 Collection 到根路徑 / 內, 例如 Genealogy , 後續再放一個 Document, 可隨喜好自行命名, 例如可以用姓氏當作 Document, 接著再插入 Collection, 加入 Document ..., 整個路徑大概長的像這樣:
        /族譜                       /0世代             /1世代              /2世代         /3世代
實際上是:
        /Genealogy/姓氏      /0/祖先姓名     /1/長男名           /2/長男名    /3/長男名   ...
                                                           /1/次男名           /2/長男名  ...
                                                           /1/參男名
上面輸入的英文字或數字就是插入的 Collection, 輸入的中文名就是加入的 Document. 或是乾脆直接掛到根目錄底下, 直接用 Collection 0 當起點, 路徑變短一點, 隨個人喜好而定:
        /0/祖先姓名     /1/長男名           /2/長男名    /3/長男名   ...
                             /1/次男名           /2/長男名  ...
                             /1/參男名
Firebase 資料庫一旦建立, 在 console 底下操作刪除有點麻煩, 目前還不曉得如何將Collection 或 Document 般移或重新命名, 可能要用程式處理, 因此事先最好做好族譜的編排方式(特別是資料型態到底是數字還是字串), 避免重新輸入做白工.

沒有留言:

張貼留言

使用 pcie 轉接器連接 nvme SSD

之前 AM4 主機板使用 pcie ssd, 但主機板故障了沒辦法上網, 只好翻出以前買的 FM2 舊主機板, 想辦法讓老主機復活, 但舊主機板沒有 nvme 的界面, 因此上網買了 pcie 轉接器用來連接 nvme ssd, 遺憾的是 grub2 bootloader 無法識...