小编ndy*_*dyr的帖子

用于 Sequelize v5 和 Typescript 的模型加载器

之前在项目 ( v4 ) 中使用过 Sequelize,但尝试使用 Sequelize v5 和 Typescript 开始一个新项目

我已经按照 Sequelize 的文档了解如何定义模型:https ://sequelize.org/master/manual/typescript.html#usage-of--code-sequelize-define--code-

我现在有一个可用的 ORM,但仅在导入实际模型以供使用时,而不是通过从模型加载器导入数据库。
IEimport { User } from "../db/models/user";

导入数据库,在尝试访问 db.User 时只返回undefined

试图弄清楚如何让模型加载器与 Sequelize V5 和 Typescript 完美搭配,但目前它是空的。

现在,我可以说它正在搜索.js文件。所以显然它不会获取 user.ts 文件。将其更改为.ts然后给我错误....

    at Sequelize.import (/node_modules/sequelize/lib/sequelize.js:486:38)
    at fs_1.default.readdirSync.filter.forEach.file (/src/db/models/index.ts:26:35)
    at Array.forEach (<anonymous>)
    at Object.<anonymous> (/src/db/models/index.ts:25:4)

Run Code Online (Sandbox Code Playgroud)

我一直试图从网络搜索中获得明确的答案,但似乎是空洞的。试图让一切都玩得很好,这已经够头疼了……此时我正在将迁移/播种机作为 js 文件运行,因为我不想处理sequelize-typescript-clisequelize-typescript

src/db/models/user.ts 用户模型

import { Sequelize, Model, DataTypes, BuildOptions } from 'sequelize';
import { HasManyGetAssociationsMixin, HasManyAddAssociationMixin, …
Run Code Online (Sandbox Code Playgroud)

express sequelize.js typescript

4
推荐指数
1
解决办法
4493
查看次数

续集| 如果任一hasMany关联符合其where条件,则返回结果

我有模型,和Ç

A具有与BC的hasMany关联(并且BC具有回到A的belongs关联)

我想返回A的记录,其中B.b_column ='b'或C.c_column ='c'

我当前的方法是尝试使用required:在哪里的false,但这仅返回A及其关联的所有记录(如果它们存在)。我还尝试在关联上使用split:true,但它似乎仍带回了比我想要的更多的记录。

var results = await A.all({
      include: [
        { 
          model: B, as: "Bs",
          where: { b_column: "b"},
          separate: true
        },
        { 
          model: C, as: "Cs",
          where: {c_column: "c"},
          separate: true
        },
      ]
    });
Run Code Online (Sandbox Code Playgroud)

postgresql node.js sequelize.js hapijs

1
推荐指数
1
解决办法
294
查看次数

标签 统计

sequelize.js ×2

express ×1

hapijs ×1

node.js ×1

postgresql ×1

typescript ×1