Javascript 如何检查当前用户是否喜欢帖子
我如何才能检查当前用户是否喜欢该帖子。理想情况下,这类似于喜欢instagram上的帖子。心是红色的,表示你喜欢它 如何才能为后端添加类似的功能 我知道后端会有一个布尔值,表示用户有自己的帖子。我正在使用sequelize,考虑到我的模型,我应该怎么做才能使这个功能正常工作 理想情况下,post中的liked列应该表明我是否喜欢postJavascript 如何检查当前用户是否喜欢帖子,javascript,sequelize.js,Javascript,Sequelize.js,我如何才能检查当前用户是否喜欢该帖子。理想情况下,这类似于喜欢instagram上的帖子。心是红色的,表示你喜欢它 如何才能为后端添加类似的功能 我知道后端会有一个布尔值,表示用户有自己的帖子。我正在使用sequelize,考虑到我的模型,我应该怎么做才能使这个功能正常工作 理想情况下,post中的liked列应该表明我是否喜欢post req.session.user.id获取当前用户 邮政管理员 getPosts: async (req: Request, res: Response) =
req.session.user.id
获取当前用户
邮政管理员
getPosts: async (req: Request, res: Response) => {
await models.Post.findAll({
include: [
{ model: models.User, as: "author", attributes: ["username"] },
{ model: models.Likes }
],
order: [["createdAt", "DESC"]],
limit: 6
}).then(posts => {
res.json(posts);
});
},
Post(模型)
喜欢(模型)
差不多
const iLikeIt=Like.findOne({其中:{
资源ID:posted,
userId:req.session.user.id,
}})
如果(iLikeIt){
//我喜欢它
}否则{
//我不喜欢它
}
我将尝试此功能,此功能应放在何处?
"use strict";
module.exports = (sequelize, DataTypes) => {
var Post = sequelize.define("Post", {
title: DataTypes.STRING,
postContent: DataTypes.STRING,
liked: {
type: DataTypes.BOOLEAN,
allowNull: false,
defaultValue: false
},
likeCounts: {
type: DataTypes.INTEGER,
allowNull: false,
defaultValue: 0
},
authorId: DataTypes.INTEGER
}, {});
Post.associate = function (models) {
Post.belongsTo(models.User, {
as: "author",
foreignKey: "authorId",
onDelete: "CASCADE"
});
Post.hasMany(models.Likes, {
foreignKey: "resourceId",
timestamps: false,
targetKey: "id",
onDelete: "CASCADE"
});
};
Post.prototype.likedByMe = postId => { };
return Post;
};
//# sourceMappingURL=post.js.map
"use strict";
module.exports = (sequelize, DataTypes) => {
var Likes = sequelize.define("Likes", {
userId: DataTypes.INTEGER,
resourceId: DataTypes.INTEGER,
likeByMe: {
type: DataTypes.BOOLEAN,
defaultValue: false,
allowNull: false
}
});
Likes.associate = function (models) {
// associations can be defined here
Likes.belongsTo(models.User, {
foreignKey: "userId",
timestamps: false,
onDelete: "CASCADE"
});
Likes.belongsTo(models.Post, {
foreignKey: "resourceId",
timestamps: false,
onDelete: "CASCADE",
targetKey: "id"
});
};
return Likes;
};
//# sourceMappingURL=likes.js.map