你好,我想找到用户所做的帖子...
我使用JWT令牌执行请求:
###
http://localhost:8080/forum/getByOwnerID
Authorization: Bearer {{token}}
这是我的创建函数:
exports.create = async (req, res) => {
const { forumName, forumDescription } = req.body;
const token = req.token;
const forumExist = await Forum.findOne({ forumName: req.body.forumName });
if(forumExist){
res.status(400).send("Forum Exists already.");
}
try{
const owner = await User.findOne({userID:token._id});
if (!forumName || !forumDescription) {
res.status(400);
throw new Error("Please Fill all the feilds");
return;
}
else {
const newForum = new Forum({ forumName, forumDescription,user: owner.userID });
newForum.user = owner;
const createdNote = await newForum.save();
res.status(201).json(createdNote);
}
}catch(err){
res.status(400).send(err);
}
};
这是我的函数,我想在其中获取用户发表的帖子:
exports.getByToken = async (req, res, next) => {
const forum = await Forum.findById( {user: req.token._id} );
if (forum) {
res.json(forum);
} else {
res.status(404).json({ message: "Forum not found" });
}
res.json(forum);
}
这是我为博文准备的模型:
const forumSchema = ({
forumName: {
type: String,
required: true,
},
forumDescription: {
type: String,
required: true,
},
user: {
type: Schema.Types.ObjectId,
ref: 'user'
},
published_on: {
type: String,
default: moment().format("LLL")
},
});
每次我做一个请求它有这个错误:
UnhandledPromiseRejectionWarning: CastError: Cast to ObjectId failed for value "{ user: 'admin' }" (type Object) at path "_id" for model "Forum"
我的生成令牌:
const generateToken = (_id, userID) => {
console.log('Signing token for ID ', _id,userID);
console.log('Secret key is ', process.env.JWT_KEY);
const token = jwt.sign({ _id,userID}, process.env.JWT_KEY, {
expiresIn: "30d",
});
console.log('Signed token: ', token);
return token;
};
在使用findById时,只应将id作为参数函数发送。
如果你想搜索过滤器查询,使用查找方法
问题内容: 我有一个包含以下两个表的数据库, USERS,POSTS 我正在寻找一种方法来获取用户拥有的帖子数。 我尝试了以下SQL命令的许多变体,但均未成功。与其显示单个用户的帖子数,不如显示一行包含所有帖子的数。 最后我想要这样的东西 问题答案: 弄清楚了。
我找了很多,但没有找到任何答案,所以我希望你能帮助我! 我有三个表:post、users和post\U users。Post_users包含两列:user_id和Post_id。 我需要得到一个有口才的用户的所有帖子。有什么想法吗? 非常感谢你! (如果这个问题已经存在,我很抱歉,但我还没有找到它)
问题是无论我开什么帖子,它都能让我找到一个特定的帖子。原因是我编写single.php循环函数的方式。它只是得到所有的帖子,并打开第一个,我知道我的错误在哪里,但我不知道我如何修复。这是我的单独的.php代码。 所以我明白了,为什么它会让我得到这样的结果,但我该如何修复它呢?
问题内容: 我想对具有多对一关系的2个表进行搜索,例如 现在说我有一些像这样的数据 我想做的是创建一个活动记录查询,该查询将返回同时拥有cat和dog的用户(即用户1-Bob)。 到目前为止,我的尝试是 现在,我明白了为什么这行不通-它正在寻找既是dog又是cat的宠物,因此什么也不返回。我不知道如何修改它来给我我想要的答案。有没有人有什么建议?这似乎应该很容易- 似乎不是特别不寻常的情况。 -
这是一个社交媒体软件。 用户表有id,名称,电子邮件,密码字段。 发布表有id,user_id,标题和其他字段。 职业表有id,标题字段 users_professions表有id,user_id字段 每个用户都有很多帖子。 用户有很多帖子,发布个人物品给用户。 每个用户有一个users_professions。 用户hasOneusers_professions。 问题: 我想获得用户职业与所选
我有一个AWS Appsync应用程序,使用DynamoDB作为后端。我有一个帖子表,每个帖子都有一个原作者的用户名字段。我现在的情况是,我想查询查看他们所关注的所有作者的文章。 每个用户可以有许多帖子,每个用户可以跟随许多用户。 我应该如何构造DynamoDB中的表和AppSync中的AppSync解析器/模式来实现这一点。