Получение данных из другой таблицы в базе данных
У меня есть две модели в базе данных, пользователь и пост
const User = sequelize.define('user', {
id: {type: DataTypes.INTEGER, primaryKey: true, autoIncrement: true},
email: {type: DataTypes.STRING, unique: true},
password: {type: DataTypes.STRING},
});
const Post = sequelize.define('post', {
author: {type: DataTypes.STRING},
title: {type: DataTypes.STRING},
content: {type: DataTypes.STRING}
});
И есть метод, создающий пост пользователя:
async createPost(req,res) {
try {
console.log(req.headers.authorization);
const {author} = await User.findOne({where: {email}});
const {title, content} = req.body;
/*if(!title || !content) {
return res.status(400).json({message: 'Title or content cannot be empty'});
}
const post = await Post.create({})*/
return res.json({message: 'All right'});
} catch (e) {
console.log(e.message);
}
}
}
Вопрос такой, как мне получить email пользователя из другой таблицы и записать его в переменную author. Писать пост может только зарегистрированный пользователь. Был вариант с помощью jwt-decode расшифровать jwt-токен и найти там поле email, но можно ли попроще?