Skip to content

Instantly share code, notes, and snippets.

@jnewman12
Last active January 24, 2017 20:00
Show Gist options
  • Select an option

  • Save jnewman12/715779ba0908ff8667b196408a032324 to your computer and use it in GitHub Desktop.

Select an option

Save jnewman12/715779ba0908ff8667b196408a032324 to your computer and use it in GitHub Desktop.
express use delete
  • base of project

npm install method-override

  • in server.js
var methodOverride = require('method-override');
// override with POST having ?_method=DELETE
app.use(methodOverride('_method'))
  • in show.ejs or wherever you want to delete it
<form method="POST" action="/posts/<%= post.id %>?_method=DELETE">
  <input type="hidden" name="_method" value="delete"/>
  <button type="submit" name="postId" value="<%= post.id %>">Put resource</button>
</form>
  • in our routes
router.delete('/:id', function(req, res) {
	var id = req.body.postId;
	post.destroyBlogEntry(parseInt(id));
	res.render('posts/index', { title: "My Blog", posts: post.getBlogEntries() });
})
  • in our post.js
exports.destroyBlogEntry = function(id) {
	for (var i = 0; i < entries.length; i++) {
		if (entries[i].id === id) {
			console.log("splice entries");
			return entries.splice(i, 1);
		}
	}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment