我有ObjectId字符串。
var comments = new Schema({
user_id: { type: Schema.Types.ObjectId, ref: 'users',required: [true,'No user id found']},
post: { type: Schema.Types.ObjectId, ref: 'posts',required: [true,'No post id found']}....
export let commentsModel: mongoose.Model<any> = mongoose.model("comments", comments);
- 如何使用 *
let comment = new commentsModel;
str = 'Here my ObjectId code' //
comment.user_id = str;
comment.post = str;
comment.save();
当我创建一个"comment"模型并分配一个字符串user_id value或post时,我在保存时遇到了一个错误。我使console.log(comment)
所有数据都被分配给了vars。
我试着:
var str = '578df3efb618f5141202a196';
mongoose.mongo.BSONPure.ObjectID.fromHexString(str);//1
mongoose.mongo.Schema.ObjectId(str);//2
mongoose.Types.ObjectId(str);//3
1.类型错误:对象函数ObjectID(id){
- TypeError:无法调用未定义的方法"ObjectId"
- TypeError:无法读取未定义的属性"ObjectId"
当然,我包括 Mongoose 在所有调用之前
import * as mongoose from 'mongoose';
什么都不管用。
4条答案
按热度按时间0h4hbjxa1#
要使用默认导出:
之后,
mongoose.Types.ObjectId
将工作:**编辑:**完整示例(使用
mongoose@4.5.5
测试):数据库显示:
ymdaylpp2#
用这个
tyky79it3#
短代码。
5jvtdoz24#
如果您使用的是TypeScript:
然后: