Sequence NODE_259
MediumImplement Soft Delete vs Hard Delete
Express.js
Node.js
Technical Specification
Implement DELETE /items/:id as soft delete (mark isDeleted) and add /admin/items endpoint to include deleted ones.
Input/Output Samples
Input:DELETE /items/1
Output:Item marked isDeleted=true
Optimal Logic Path
app.delete("/items/:id", (req, res) => {
const item = items.find((i) => i.id === Number(req.params.id));
if (!item) return res.status(404).json({ error: "Not found" });
item.isDeleted = true;
res.status(204).end();
});
app.get("/items", (req, res) => {
res.json(items.filter((i) => !i.isDeleted));
});
app.get("/admin/items", (req, res) => {
res.json(items);
});Architectural Deep-Dive
Soft delete lets you hide records from normal clients while keeping them for admin or recovery.