摘要:譯者飛龍來源在連接之后,你可以使用連接對(duì)象來定義你的模型。你需要指定模型的名稱,一個(gè)用于描述的屬性和一些可選的選項(xiàng)。在這個(gè)例子中,有個(gè)模型方法叫做。接收的第一個(gè)對(duì)象第二個(gè)參數(shù)被稱為屬性對(duì)象,它定義了所有的屬性。在屬性修改時(shí)自動(dòng)保存模型。
譯者:飛龍
來源:Defining Models
在連接之后,你可以使用連接對(duì)象(db)來定義你的模型。你需要指定模型的名稱,一個(gè)用于描述的屬性和一些(可選的)選項(xiàng)。下面是一個(gè)簡短的例子:
var Person = db.define("person", { id: {type: "serial", key: true}, // the auto-incrementing primary key name: {type: "text"}, surname: {type: "text"}, age: {type: "number"} }, { methods : { fullName: function() { return this.name + " " + this.surname; } } });
這個(gè)模型叫做person(通常也是數(shù)據(jù)庫里面表的名稱),它有三個(gè)屬性(name和surname為文本,age為數(shù)值)。如果你自己不指定任何鍵的話,默認(rèn)的id: { type: "serial", key: true }會(huì)添加進(jìn)來。在這個(gè)例子中,有個(gè)模型方法叫做fullName。下面是這個(gè)模型的使用方法的示例:
Person.get(73, function(err, person) { if (err) throw err; console.log("Hi, my name is " + person.fullName()); });
這會(huì)獲取id=73的person對(duì)象,并且打印出它的名字和姓氏。其它類型的可用屬性請(qǐng)見這里。
API/** * @param {Object} props Property definitions * @param {Object} opts Options */ db.define(props, opts)
db.define()接收的第一個(gè)對(duì)象(第二個(gè)參數(shù))被稱為屬性對(duì)象,它定義了所有的屬性。
第二個(gè)對(duì)象指定了額外的選項(xiàng):
選項(xiàng)名稱 | 類型 | 描述 |
---|---|---|
collection | String | 覆寫數(shù)據(jù)庫中表的名稱 |
methods | Object | 模型實(shí)例上的額外方法,它會(huì)被設(shè)置到實(shí)例上。 |
hooks | Object | 用戶定義的鉤子或回調(diào) |
validations | Object | 用戶定義的驗(yàn)證器 |
id | Array | 為了支持在properties上設(shè)置key: true而不提倡使用 |
cache | Boolean | 允許你開啟或者禁用單例行為。它叫做cache,但是和緩存毫無關(guān)系。 |
autoSave | Boolean | 不推薦。在屬性修改時(shí)自動(dòng)保存模型。 |
autoFetch | Boolean | 是否自動(dòng)獲取關(guān)聯(lián) |
autoFetchLimit | Number | 自動(dòng)獲取關(guān)聯(lián)的深度 |
cascadeRemove | Boolean | 刪除實(shí)例時(shí)是否要?jiǎng)h除關(guān)聯(lián) |
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/17509.html
摘要:譯者飛龍來源模型和一些關(guān)聯(lián)具有一個(gè)或多個(gè)屬性,每個(gè)屬性有類型以及一些可選設(shè)置,你可以自行選擇它們或使用默認(rèn)設(shè)置。文本類型也支持最大尺寸數(shù)值和布爾值,用于非常長的字符串。數(shù)值類型是浮點(diǎn)數(shù),支持?jǐn)?shù)值,字節(jié)大小和布爾值。日期類型支持布爾值。 譯者:飛龍 來源:Model Properties 模型和一些關(guān)聯(lián)具有一個(gè)或多個(gè)屬性,每個(gè)屬性有類型以及一些可選設(shè)置,你可以自行選擇它們(或使用默認(rèn)...
摘要:譯者飛龍來源模塊用于驗(yàn)證數(shù)據(jù)。可用的驗(yàn)證器的列表請(qǐng)見。驗(yàn)證器也構(gòu)建于中,可以這樣來訪問你可以為模型的每個(gè)屬性定義驗(yàn)證器。在第一個(gè)驗(yàn)證器驗(yàn)證失敗之后,驗(yàn)證就停止了。 譯者:飛龍 來源:Model Validations Enforce模塊用于驗(yàn)證數(shù)據(jù)。對(duì)于使用以前的驗(yàn)證器的用戶,還可以繼續(xù)使用,它們中的一部分整合到了enforce,剩余部分還沒有。推薦你開始使用orm.enforce...
閱讀 1253·2021-11-22 13:54
閱讀 1440·2021-11-22 09:34
閱讀 2717·2021-11-22 09:34
閱讀 4030·2021-10-13 09:39
閱讀 3352·2019-08-26 11:52
閱讀 3373·2019-08-26 11:50
閱讀 1541·2019-08-26 10:56
閱讀 1923·2019-08-26 10:44