mostly adding posts controller and model but also updating some users stuff
This commit is contained in:
58
api/controllers/postsController.js
Normal file
58
api/controllers/postsController.js
Normal 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
|
||||
});
|
||||
});
|
||||
}
|
||||
Reference in New Issue
Block a user