贊助商連結

Sails 0.11 Model or Service 不能取名為 File

Sails 會將所有的 Model/Service 提升到 Gobal,這樣方便在 Controller 或是 Sails 執行時期使用。

不過因為 Sails 0.11 升級了 Socket.IO 到 1.0,新版的 Socket.IO 會使用到 File 這個關鍵字,所以 Model/Service 命名為 File 就會衝到,Issue #2638 這邊有說明。

解決方法有兩個

  1. 關掉 config/globals 裡面 models or services 的提升。
  2. 不要用 File 這個關鍵字作為 models or services 的檔名,對於已經存在的 project 將 File 重新命名。

院長這邊建議使用第二個方法,如果是舊的 project 升級上來的,就把 File 重新命名,然後在 model 裡面加上 tableName 這個屬性,這樣就不用 migrate data。