iT邦幫忙

2017 iT 邦幫忙鐵人賽
DAY 13
0
Modern Web

認識 Sails.js - 如何建構一個 MVC 網站系列 第 13

認識 Sails.js - Model 和 ORM

Model 就是 MVC 中的 M,與 Database schema 有密切的關係,甚至是完全可以對應。

在 Sails.js 的理想下,它希望將所有的資料庫都一視同仁,不管你是使用 mongodb 或著是 MySQL 都使用同樣的語法呼叫資料庫,當你哪天想換用其他資料庫時,你只要改設定檔就可以無痛轉換,所以定義了共通呼叫介面叫 Waterline,然後每一個不同的資料庫,有獨立的 adapter 跟 waterline 銜接。

但理想是夢幻的現實是殘酷的,要將原本就差異很大的關聯式資料庫與 NOSQL 資料庫,視為一視同仁,勢必得捨去許多東西,介面也非常難定義,再加上每個 adapter 得需跟上資料庫改版的腳步,可以想像到的是一場災難,這也是 Sails.js 架構中,一直很詬病的地方,所以我並不會在 waterline 中多琢磨,下篇直接介紹替代方案。

延伸閱讀



上一篇
認識 Sails.js - Service
下一篇
認識 Sails.js - 設定 Sails Sequelize Hook
系列文
認識 Sails.js - 如何建構一個 MVC 網站17
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言