NodeJS 的续集:支持这些功能吗?

2024-04-28

以下是关于sequelize支持的功能的一些问题(续集项目网站 http://sequelizejs.com)在决定是否使用它之前我想澄清一下:

  1. 链接(效率):当链接多个查询时,这些查询是收集到对数据库的一个请求中(作为一批操作),还是每个请求单独发送?

  2. 链接(成功/错误):链接多个查询时,何时发出成功事件以及错误时会发生什么?仅当以下情况时才会发出“成功”all操作成功了吗?如果出现错误,是否会回滚所有操作(即链式操作是否被视为事务)

  3. 过滤关联:说一个Crowd对象具有关系Crowd.hasMany(Person)。您可以通过执行来获取所有关联的人crowd.getPersons(),但是是否可以选择其中的子集,例如crowd.getPersons({where: { age: 30 }})?

  4. 获取通过两个或更多步骤相关的关联对象:说Crowd对象作为关系Crowd.hasMany(Person) and Person有关系Person.hasMany(Pet)。是否有可能通过执行类似的操作来获得人群中的所有宠物crowd.getPersons().getPets(),如果是这样,它会作为多个请求发送到数据库,还是只是一个请求?

  5. “深层”对象:我想将一个人定义为对象:

    sequelize.define('Person', {
        name: {
            first: <a string>,
            last: <a string>
        }
    });
    

    这是允许的吗? (请注意,名称不会是数据库表的列,但第一个和最后一个会是)

  6. “计算”对象:是否可以向对象添加一个根据对象的其他字段计算得出的字段?例如:

    sequelize.define('Person', {
        name: {
            first: <a string>,
            last: <a string>,
            full: <name.first + ' ' + name.last> // <-- this field
        }
    });
    

    所以这样name.full字段实际上并不存储在数据库中(这是浪费空间),而是只是根据其他两个计算出来的?


1.:您可以使用 QueryChainer 进行超级批量处理。尽管如此,每个命令都将单独执行。

2.:使用QueryChainer,只有在一切正常的情况下才会触发成功事件。如果发生一个或多个错误,则会触发错误。绑定方法的第一个参数将是一个错误数组。

3.:嗯,我不是 100% 确定,但恕我直言,它还不受支持。

4.:不,不可能,但更复杂且不那么花哨:

crowd.getPeople().success(function(people) {
  people.forEach(function(person){
    person.getPets().success... // you have to collect them on your own
  })
})

5.:不。但我也不明白你为什么要这样做。

6.:是的,检查一下http://sequelizejs.com/docs/1.7.8/models#expansion-of-models http://sequelizejs.com/docs/1.7.8/models#expansion-of-models and:

Person = sequelize.define('Person', {foo:Sequelize.STRING}, {
  instanceMethods: {
    fullname: function() {
      return this.firstName + ' ' + this.lastName
    }
  }
})
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

NodeJS 的续集:支持这些功能吗? 的相关文章

  • NodeJS 无法加载 css 文件

    所以我正在尝试制作一个 NodeJS 服务器 并且我尝试保留尽可能少的附加组件 但是 我遇到了一个问题 我似乎无法加载任何内容CSS我调用的文件HTML文件 该调用似乎确实由服务器处理 但它不会显示在浏览器中 My 网络服务器 js fil
  • 未处理的拒绝:发送后无法设置标头

    我正在 Dialogflow 中创建一个聊天机器人 当我尝试将数据添加到数据库时 它抛出了 未处理的拒绝 错误 这是我的index js文件 use strict const functions require firebase funct
  • CORS 问题从 React 应用程序 > 节点服务器 > 重定向到 Google OAuth2 身份验证发出 AJAX 请求

    大家好 过去两天我一直在绞尽脑汁研究这个问题 但没有运气 这是我在尝试从我的 React 应用程序 localhost 3000 使用 Google Oauth2 Passport 策略进行身份验证时遇到的错误 我正在 localhost
  • 如何在不到处添加调试行的情况下记录 Node.js 中的每个方法调用?

    我想记录发出请求的人的 user id 以及为 javascript 类调用的每个方法的方法名称 例如 35 log in 35 list of other users 78 log in 35 send message to user 3
  • Node.js es6 使用index.js 导出/导入

    我有以下文件夹结构 src index js lib test js dist examples example js src lib test js export default class Test src index js impor
  • 设置缩略图内容类型

    我需要设置Content Type对于缩略图 我已经尝试如下所示 但它不起作用 仍然 它存储为流 天青功能 索引 json var Jimp require jimp module exports context myBlob gt Rea
  • 如何按单个整数字段对 JSON 进行排序? [复制]

    这个问题在这里已经有答案了 我有以下 JSON title title order 0 order 9 order 2 JSON 包含很多字段 我如何根据字段对它们进行排序order field 我一直在寻找 Nodejs 中内置的东西 但
  • 在 PHP 中将十进制/双精度/浮点值与 PDO 绑定的最佳方法是什么?

    看来类常量只涵盖PDO PARAM BOOL PDO PARAM INT and PDO PARAM STR用于绑定 您只是将十进制 浮点 双精度值绑定为字符串还是有更好的方法来处理它们 MySQLi 允许使用 d 类型表示 double
  • Eclipse 中的 node.js - 大多数人使用哪个插件?

    我最感兴趣的是服务器端 Web 开发 尽管能够在 Chrome 中重新部署一些部分会很好 我目前正在跑步Eclipse Indigo在 Ubuntu 上主要开发 Java Scala 程序并使用 git 到目前为止我遇到过http code
  • 从数据库 MYSQL 和 Codeigniter 获取信息

    如果你们需要其他信息 上一个问题就在这里 从数据库中获取信息 https stackoverflow com questions 13336744 fetching information from the database 另一个更新 尽
  • 为什么我必须使用“npm start x”启动某些脚本,而仅使用“npm x”启动其他脚本?

    In my 包 json 我有以下部分用于脚本定义 scripts ng ng start ng serve build ng build prod test ng test lint ng lint e2e ng e2e 每当我想运行该应
  • 在 Node.js 中以事务方式写入文件

    我有一个 Node js 应用程序 它将一些配置数据存储在文件中 如果更改某些设置 配置文件将写入磁盘 目前 我正在使用一个简单的fs writeFile 现在我的问题是 当 Node js 在写入文件时崩溃时会发生什么 磁盘上是否有可能存
  • 如何将图数据结构持久化到关系数据库中?

    我考虑过创建一个顶点表和一个边表 但是在内存中构建图和遍历子图是否需要大量查找 我想避免过多的数据库读取 还有其他方法可以保存图表吗 旁注 我听说过 Neo4j 但我的问题实际上是如何在概念上表示标准数据库中的图形 不过 我对一些 NoSQ
  • 装饰器中间件模式的 Typescript 类型

    我正在考虑节点中间件 在各种框架中 通常 中间件会向请求或响应对象添加一个属性 然后该属性可供在其之后注册的任何中间件使用 此模型的一个问题是您无法进行有效的打字 为了进行演示 这里有一个此类框架的高度简化的模型 在这种情况下 一切都是同步
  • PHP 中正确的存储库模式设计?

    前言 我尝试在具有关系数据库的 MVC 架构中使用存储库模式 我最近开始学习 PHP 中的 TDD 并且我意识到我的数据库与应用程序的其余部分耦合得太紧密 我读过有关存储库并使用国际奥委会容器 http laravel com docs 4
  • 如果我的应用程序安装在 SD 卡上,私人数据也在那里吗?

    我假设应用程序的私有数据 例如 SharedPreferences 和 SQLite 数据库 位于手机的内部存储而不是 SD 卡上 即使应用程序本身安装在 SD 卡上 我在任何地方都找不到对此的简单明确的确认 有人可以确认一下吗 是的 私有
  • Firebase 身份验证和实时应用程序数据库如何保护自身安全?

    从一般开发的角度来看 我很好奇如何保护在线资源的访问 我们使用以下 Firebase 配置参数初始化 Web 应用程序 apikey authdomain projectid databaseurl messagesenderid 服务器如
  • 获取类中的所有静态 getter

    假设我有这个类 我像枚举一样使用它 class Color static get Red return 0 static get Black return 1 有没有类似的东西Object keys to get Red Black 我使用
  • 节点未找到全局模块

    所以我意识到这是一个相当通用的标题和问题 但我已经搜索了很多答案 但遗憾的是它们似乎都不适合我 我希望通过我自己提供更多信息 也许有人有一个具体的答案 或者确切地知道将我重定向到哪个答案 我的问题 当我全局安装节点模块时 例如npm ins
  • Socket.io、集群、快速和同步事件

    1周以来我遇到了一个大问题 我尝试将实际在单核上运行的 node JS 项目转换为具有集群的多核 对于 websockets 目前 我对事件没有任何问题 但是 对于 xhr polling 或 jsonp polling 我在集群模式下使用

随机推荐