提问者:小点点

MongoDB/javascript/node.js/typescript:如何连接到两个mongoose模型?


我正在创建一个api,并将MongoDB用作数据库,我已经创建了一个模型:在dataBase.ts中

import mongoose = require('mongoose');

const schema = new mongoose.Schema({
    id: String,
    username: String,
    gender: String,
    birthdate: String,
    password: String
});

export default mongoose.model('users', schema);

我正在使用以下方法连接到数据库:

mongoose.connect('mongodb://localhost:27017/users', {useNewUrlParser: true});

在app.ts中。

在utils.ts中,我像这样导入了模型:

import userDB from './database';

例如,要检索数据库中的所有用户,我使用这个(仍然在utils.js中):

  const users = await userDB.find();

现在我的问题是,我想要另一个模型,它将有一些内部的键,我可以检索和检查,例如,用户给我的东西是否对应于其中的一个键

我试着在大多数网站上搜索,但没有找到正确的答案。

我希望你能帮助我。

提前谢谢你。

PS:这是我在这里的第一个帖子,所以如果我做错了什么或者我的问题不清楚,请随时告诉我


共1个答案

匿名用户

当您连接到数据库时,您应该连接到项目,而不是连接到您的架构,如下所示

mongoose.connect('mongodb://localhost:27017/myProject', {useNewUrlParser: true});

您可以用您喜欢的任何名称替换MyProject。如果项目不存在,那么一旦启动服务器并连接mongoDB,就会创建该项目。

然后要检索所有可以使用的用户

import User from './user'; //Wherever your schema is

const Allusers = await User.find();

现在,您可以创建任意多的模式的并使用它。