当前位置: 首页 > 面试题库 >

如何组织使用续集的节点应用程序?

和和裕
2023-03-14
问题内容

我正在寻找一个使用序列化ORM的示例nodejs应用程序。

我主要担心的是,如果由于require()依赖关系循环而导致模型之间具有复杂的关系,那么几乎不可能在单独的js文件中定义模型。也许人们在一个非常长的文件中定义了所有模型?

我主要对模型的定义和在整个应用程序中的使用感兴趣。我想验证一下我自己正在做的事情是“好的”做事方式。


问题答案:

短篇小说

这种情况下的诀窍不是初始化文件中的模型 而只是提供初始化所需的信息,并让集中的模块负责模型的设置和实例化。

因此,步骤如下:

  • 有几个Model文件,其中包含有关模型的数据,例如字段,关系和选项。
  • 有一个单例模块,该模块可以加载所有这些文件并设置所有模型类和关系。
  • 在app.js文件中设置您的单例模块。
  • 获得从单模块模型类 使用require来自单上的模型文件,加载型号代替使用。

更长的故事

这是带有相应源代码的此解决方案的更详细描述:

http://jeydotc.github.io/blog/2012/10/30/EXPRESS-WITH-
SEQUELIZE.html

它在许多方面都古老而有限!

  • 首先 ,正如@jinglesthula在评论中提到的(我也经历过)-要求这些文件存在问题。这是因为requirereaddirSync!的工作方式不同!

  • 其次 -您的关系 非常 有限-该代码不提供这些关联的 选项 ,因此您 无法 创建belongsToMany它需要的through属性。您可以进行最基本的关联。

  • 第三 -您在模型关系方面非常有限!如果仔细阅读代码,您会发现关系是一个 Object 而不是 Array ,因此,如果要建立 多个 相同类型的关联(例如两次belongsTo),您将无法做到!

  • 第四 -您不需要那个单身的东西。nodejs中的每个模块本身都是单例的,因此所有这些使它毫无原因地变得非常复杂。

您应该看到Farm的答案!(本文的链接已断开,但我将使用sequelize中的此官方示例对其进行修复:https : //github.com/sequelize/express-
example/blob/master/models/index.js-
您可以浏览整个项目以了解发生了什么)。

ps:我正在编辑这篇文章,因为它被推高了,人们甚至都看不到任何新答案(就像我一样)。

编辑: 只是将链接更改为同一文章的副本,但在Github页面中



 类似资料:
  • 我在一个数据帧中有一个数据结构,它有3列:节点、父节点、前一个兄弟节点 我想创建完整数据结构的树文件夹,父节点和节点之间的级别不同,节点和previous_sibling之间的级别相同,兄弟节点之间的顺序正确。 因此,一个新的数据框、重新排序和一个新的列“级别” 当parent为null时,节点处于根级别当previous_sibling为null时这是第一个同级 下面是一个例子: 数据帧 应给出

  • 我们使用flink从一些物联网传感器生成事件。每个传感器都可用于生成不同类型的事件(如温度、湿度等)。一比多比率(传感器- 为了丰富传感器数据,我们将连接传感器数据流和表API。只需添加带有已启用事件列表的元数据。 那么,如果某些特定的仅启用了和事件,如何将传感器数据仅发送到这两个定义的过程函数? 我想到了如下情况: > 在我的案例中,执行数据丰富过程的最佳方式是什么?将传感器数据流与表流连接(通

  • 问题内容: 我使用的是grunt插件,也使用了grunt插件(在我的应用程序中列为npm依赖项)。 另外,我不提交所有生成文件所在的文件夹和文件夹。在部署和设置服务器(已经在寻找文件夹)之后,我不知道如何构建我的应用程序(我有命令)。 我看到了类似的东西,但是在上传之前提交似乎是个坏主意。也许有一些温柔的决定…有什么想法吗? 问题答案: npm支持某个步骤(在其他步骤中),这可能正是您想要的。 当

  • 我正在构建一个Hyperledger结构网络,并试图让一个组织同时拥有一个对等节点和一个订购节点。我使用cryptogen生成证书和密钥,并且只创建一个组织作为“对等组织”。我有一个网络,有6个组织——其中5个有一个对等组织,一个有一个订购者的订购者组织。然后,我获取了这些配置文件,删除了order组织,并将orderendpoint添加到一个对等组织中。我现在犯了一个错误。 打印到屏幕上: 错误

  • 问题内容: 我正在构建我的第一个Flask应用程序,但找不到一种干净利落的Python方式来组织应用程序。我不想像他们的示例一样将所有内容都放在一个.py文件中。我想将我的应用程序的每个部分放在一个单独的模块中。什么是组织事物的好方法? 问题答案: 我创建了一个名为“ Fbone ” 的Flask样板项目,请随时检查并进行分叉:) Fbone(Flask bone)是Flask(Pythonmic

  • 我有一个节点-快递应用程序。在那里,我试图调用一个API,它响应一个原始的xlsx对象作为 'Content-Type':'应用程序/八位流;charset=; UTF-8' 编写如何调用API的代码: 现在我正试图用这些数据做两件事。 将其写入excel文件。下面是我尝试的代码: 因此,在这两种情况下,文件都会损坏。 但是API响应是完美的,因为当它被UI直接使用时,xlsx文件正在正确生成。