skip to Main Content

EDIT: PROBLEM SOLVED.

I’m trying to make an update profile page for an Express app with Mongoose, and I got the error "TypeError: Cannot read properties of undefined (reading ‘hasOwnProperty’)". I am confused how to fix it. Here is my code, thanks

exports.editProfilePost = async (req, res, next) => {
  try {
    const username = req.user.username;
    const user = await User.findOneAndUpdate({ username: username }, req.body, {
      new: true,
    });
    res.redirect('/profile');
  } catch (error) {
    next(error);
  }
};

(error shown)
[1]: https://i.stack.imgur.com/xss8j.png

2

Answers


  1. Chosen as BEST ANSWER

    So... idk why this works but I forgot to make the profile picture push to cloudinary. Somehow, not pushing to cloudinary made the req.body empty, resulting in the error.


  2. The req.user could be undefined.
    To debug, add the checking:

    let username = "";
    if (typeof req.user !== "undefined") {
       username = req.user.username;
    }
    
    Login or Signup to reply.
Please signup or login to give your own answer.
Back To Top
Search