mostly adding posts controller and model but also updating some users stuff

This commit is contained in:
Will Baumbach
2025-07-25 16:33:34 -05:00
parent 11afa68c09
commit 2704577d39
5 changed files with 153 additions and 3 deletions

View File

@@ -0,0 +1,58 @@
import Post from '../models/postModel.js';
export const getAllPosts = async (req, res, next) => {
const allPosts = await Post.find({}).exec();
res.status(200).json({
status: 'success',
data: allPosts
})
}
export const getPost = async (req, res, next) => {
const post = await Post.findById(req.params.id).exec();
if (!post) {
return next('No document found with that id', 404);
}
res.status(200).json({
status: 'success',
data: post
});
}
export const getAllPostsByUser = async (req, res, next) => {
const post = await Post.find({email: req.params.user}).exec();
if (!post) {
return next('No document found with that id', 404);
}
res.status(200).json({
status: 'success',
data: post
});
}
export const createPost = async (req, res, next) => {
Post.create(req.body).then(result => {
res.status(200).json({
status: 'success',
data: result
});
});
}
export const updatePost = async (req, res, next) => {
Post.updateOne({_id: req.params.id},{$set: req.body}).then(result => {
res.status(200).json({
status: 'success',
data: result
});
});
}
export const deletePost = async (req, res, next) => {
Post.deleteOne({_id: req.params.id}).then(result => {
res.status(200).json({
status: 'success',
data: result
});
});
}