WServOrm

WServOrm

new WServOrm(ds, WOrm, url, db, optopt) → {Object}

Description:
  • 產生伺服器ORM的支援物件

Source:
Example
import WOrm from 'w-orm-mongodb/src/WOrmMongodb.mjs' //自行選擇引用ORM
import ds from './schema/index.mjs' //先行建置schema
import WServOrm from './src/WServOrm.mjs'

//st
let st = {
    dbUsername: 'username',
    dbPassword: 'password',
    dbName: 'wservorm',
    dbIP: 'localhost',
    dbPort: 27017,
}

//url, db
let url = `mongodb://${st.dbUsername}:${st.dbPassword}@${st.dbIP}:${st.dbPort}`
let db = st.dbName

//WServOrm
let opt = {
    getUserById: null,
    bCheckUser: false,
    bExcludeWhenNotAdmin: false,
}
let r = WServOrm(ds, WOrm, url, db, opt)
console.log(r) //回傳server用orm相關函數
// => {
//   backup: [AsyncFunction: backup],
//   recover: [AsyncFunction: recover],
//   woItems: {
//     tests: EventEmitter {
//       _events: [Object: null prototype] {},
//       _eventsCount: 0,
//       _maxListeners: undefined,
//       select: [AsyncFunction: select],
//       insert: [AsyncFunction: insert],
//       save: [AsyncFunction: save],
//       del: [AsyncFunction: del],
//       delAll: [AsyncFunction: delAll],
//       selectGfs: [AsyncFunction: selectGfs],
//       insertGfs: [AsyncFunction: insertGfs],
//       delGfs: [AsyncFunction: delGfs],
//       delAllGfs: [AsyncFunction: delAllGfs],
//       [Symbol(kCapture)]: false
//     }
//   },
//   addFunCheck: [Function: addFunCheck],
//   addFunPreProcessing: [Function: addFunPreProcessing],
//   addFunPostProcessing: [Function: addFunPostProcessing],
//   procOrm: [AsyncFunction: procOrm]
// }

// export default r
Parameters:
Name Type Attributes Default Description
ds Object

輸入資料表設定物件

WOrm Object

輸入資料庫ORM物件

url String

輸入資料庫連線位址字串

db String

輸入資料庫名稱字串

opt Object <optional>
{}

輸入設定物件,預設{}

Properties
Name Type Attributes Default Description
bCheckUser Boolean <optional>
true

輸入是否檢查使用者資訊布林值,預設true

getUserById function <optional>
null

輸入當bCheckUser=true時依照使用者ID取得使用者資訊物件函數,預設null

bExcludeWhenNotAdmin Boolean <optional>
true

輸入使用ORM的select方法時是否自動刪除數據內isActive欄位之布林值,預設true

Returns:

回傳通訊物件,可監聽事件open、error、clientChange、execute、broadcast、deliver,可使用函數broadcast

Type
Object