Khi bạn tạo một đối tượng bằng mô hình mongoose thì nó sẽ trả về cho bạn một đối tượng mô hình thay vì đối tượng javascript thuần túy. Vì vậy, khi bạn thực hiện delete session._id;
nó sẽ không hoạt động dưới dạng session
là một đối tượng mô hình và nó không cho phép thay đổi thuộc tính trực tiếp trên đối tượng mô hình.
Bạn cần thay đổi đối tượng mô hình thành đối tượng JS thuần túy bằng cách sử dụng toJSON()
hoặc toObject()
phương thức của đối tượng mô hình và xóa thuộc tính trên đó:
tokens.create(req.body).then(function(session) {
var sessionObj = session.toJSON();
delete sessionObj._id;
return res.send(sessionObj);
});