gpt4 book ai didi

javascript - 如何设置一个字段等于postId [METEOR]

转载 作者:行者123 更新时间:2023-11-28 00:19:36 24 4
gpt4 key购买 nike

我有一个帖子模型,我希望允许用户“应用”到该模型。因此,我使用aldeed collections 2创建了一个应用程序模型,如下所示:

applications = new Mongo.Collection('applications');

applications.attachSchema(
new SimpleSchema({
post: {
type: String,
autoValue: function() {
if (this.isInsert) {
return post._id;
} else if (this.isUpsert) {
return {$setOnInsert: post._id};
} else {
this.unset();
}
}
},
name: {
type: String,
autoValue: function() {
if (this.isInsert) {
return Meteor.userId();
} else if (this.isUpsert) {
return {$setOnInsert: Meteor.userId()};
} else {
this.unset();
}
}
},

bio: {
type:String
}
})
);

本质上,我需要每个应用程序“属于”它所应用的帖子以及创建该应用程序的用户。我认为在 Meteor 中执行此操作的最简单方法是将 post 值设置为等于 postId。但我该如何在 Meteor 中做到这一点呢?有没有更好的办法?我有 Rails 背景。

附注我也使用 IronRouter。

最佳答案

提供的代码似乎过于复杂,我更愿意使用以下架构:

 applications.attachSchema(
new SimpleSchema({
post: {
type: String,
},
name: {
type: String,
},
bio: {
type: String
}
})
);

然后将新项目添加到集合中:

var postID = posts.insert({}); // some code that inserts posts

applications.insert({post: postId, name: Meteor.userId(), bio: ''})

此外,当您使用面向文档的数据库 Mongo 时,您可能希望将所有相关文档合并到一个文档中,而不是将单独集合的 ID 存储在 application 中,例如您可以使用面向关系的数据库。

关于javascript - 如何设置一个字段等于postId [METEOR],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30151121/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com