为什么我们需要在bookshelf.js的fetch()方法中添加一个新对象?
Why do we need a new object in bookshelf.js fetch() method?
我是Node的新手,使用bookshelf.js作为我当前项目的ORM。js的文档在fetch()方法下包含以下代码片段:
// select * from `books` where `ISBN-13` = '9780440180296'
new Book({'ISBN-13': '9780440180296'})
.fetch()
.then(function(model) {
// outputs 'Slaughterhouse Five'
console.log(model.get('title'));
});
http://bookshelfjs.org/Model-fetch
让我困惑的是,如果我们正在查询现有记录,为什么我们需要在这里创建一个新对象?是否bookshelf.js的工作方式需要为每个返回的结果创建一个新对象?
这很令人困惑。目前,只有一种类型的对象既表示"model"又表示"query builder"。
fetch
在WHERE
子句前加上模型上设置的属性。
正在计划改变这一点。这里讨论。
不要像上面那样写代码,我建议这样做:
// select * from `books` where `ISBN-13` = '9780440180296'
Book.where({'ISBN-13': '9780440180296'})
.fetch()
.then(function(model) {
// outputs 'Slaughterhouse Five'
console.log(model.get('title'));
});
(我意识到你刚刚直接从文档中复制了这个)
如果你想就地更新一个模型,更喜欢使用新的model# refresh:
Book.forge({id: 5}).refresh().then(function (book) {//...
相关文章:
- 我可以在json对象中添加一个函数吗
- 单击更改图标并通过javascript添加一个css类
- 将添加一个相同类型的事件附加或覆盖以前添加的具有相同名称的事件
- 有没有添加一个ng点击到md背景
- 如何为下拉列表的每个选项添加一个属性
- 如何使用Javascript在给定的句子中找到大写单词并在其前面添加一个字符
- 在iframe中加载url并添加一个类
- 添加一个setTimeout方法会使jQuery悬停方法忽略setTimeout方法中的函数
- Jquery添加一个类之后,如何应用css
- jQuery在悬停时只添加一个类
- 添加一个javascript函数来下载elfinder上的事件
- 仅首先需要使用jasmine从节点添加一个文件
- 尝试添加一个选项以使用append进行选择,但没有任何结果
- 简单的Javascript方式,在输入字段的每5位数字后添加一个空格
- 如何使用JavaScript's”;应用“;方法,在数组之前添加一个额外的参数
- 在xsl中为body onload添加一个值
- 当用户单击按钮(在光标位置)时,在输入字段中添加一个文本字符串
- 添加一个元素,它's通过JS的类名
- 当我添加一个新数字时,如何获得一些数字的即时平均值
- 在跨度中每3个字符添加一个空格