我正在構建一個 CRUD 應用程序。我陷入了更新和刪除操作,其他一切似乎都正常。所以我使用方法覆蓋來發送 PUT 和 GET 請求。這是相關代碼:app.jsconst methodOverride = require('method-override');app.use(methodOverride('_method'));這是我寫的更新和刪除內容。我正在使用 Mongodb 的 Monk 驅動程序。index.jsvar router = express.Router();router.put('/videos/:id', function(req, res){ var collection = db.get('videos'); var item = { title: req.body.title, genre: req.body.genre, image: req.body.image, description: req.body.desc }; var id = req.params.id; collection.update( {_id: id}, { $set: item }); res.redirect('/videos');});router.delete('/videos/:id', function(req, res){ var collection = db.get('videos'); collection.remove({"_id" : req.params.id}); res.redirect('/videos');});對于刪除表格<form action="/videos/<%= video._id %>?_method=DELETE" method="POST"><button type="submit" class="btn btn-danger">Delete video</button></form>用于更新表格<form method="POST" action="/videos/<%= video._id %>?_method=PUT"> <input type="hidden" name="_method" value="PUT"></form>我搜索了很多地方,當我點擊提交按鈕時仍然出現網頁未找到(404)錯誤。我缺少什么?提交按鈕應該調用我在 中展示的兩個方法index.js。
router.put 和 router.delete 的 PUT 和 GET 方法不起作用(快速)
一只萌萌小番薯
2023-08-05 20:46:06