在上一篇章的時候,我們已經透過指令來同步 DB 資料表生成 Entity,目前的 Entity 是長這樣:
雖然都有照著資料表的格式生成,但是我有些資料格式似乎設錯了,那現在我們來更新它吧!
那我們這次改用 DBeaver
,先打開到 Task
這張表,選到屬性的部分:
我們先來調整 id
的資料格式,將它調整成 int4
,順便給它個敘述:
之後按右下角的儲存,將資料表修改完成,它會彈出要執行的事項:
好,修改完畢,現在我們再下一次 yarn update:orm
看會變成什麼樣子:
OK,順利變成我們想要的 number
了,再來要修正的是兩個字串的資料格式。
我們把 title 及 description 修改成 varchar
並順便給他們一點敘述:
之後下 yarn update:orm
,也順利修改成我們想要的格式了:
剩下的 status 已經是我們想要的格式了,所以不作調整。
我們在記錄 DB 資料表時,通常還會多兩欄有關時間戳的紀錄,一來是方便查詢某年某月的紀錄,二來是若有想要照某種方式來排列的話,這樣查詢也比較方便,故我們現在來新增 create_time
及 update_time
:
之後下 yarn update:orm
,OK,也順利的新增上去了:
我們現在指令的生成位置是 .
,所以它會生在這裡:
若我們想要讓 Entity 換個位置生成,只要修改一下指令(以下為範例):
然後再去新增一下自己需要的資料夾,把舊的 Entity 砍掉:
然後下一次 yarn update:orm
,OK,在我們想要的地方生成 Entity 了:
在下指令之後,若有觀察檔案變動的情形,可以發現專案自動生成了 ormconfig.json
及 tsconfig.json
兩個文件:
但這兩個文件其實我們都不需要,我們修改一下指令,後面加上不生成 config 文件的指令(生成位置要多加上 /entities):
試著執行看看,OK,現在那兩個檔案不會出現了:
好,到現在為止我們的指令是長這樣,之後若將 DB 推上遠端的話還需要回來修改 IP、帳密:
"update:orm": "typeorm-model-generator -h localhost -d taskmanagement -u postgres -x !Passw0rd -e postgres -o ./src/db/taskmanagement/entities --noConfig true"
若要使用其他更多功能,可以參考 GitHub 文件,或是一些其他人的教學文,例如:
https://blog.csdn.net/kuangshp128/article/details/98062662
/*
本系列文係個人新手開發心得,可能會有許多錯誤,煩請多多包容不吝指教。
*/