Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import Vapor
- import VaporPostgreSQL
- let drop = Droplet(
- preparations: [People.self],
- providers: [VaporPostgreSQL.Provider.self]
- )
- // GET request /people
- drop.get("people") { request in
- var people = People(name: "Sean", favoriteCity: "New York")
- try people.save()
- return try JSON(node: People.all().makeNode())
- }
- // POST request /people
- drop.post("people") { request in
- guard var filtered = try People.all().first,
- let name = request.data["name"]?.string,
- let favCity = request.data["favoritecity"]?.string else {
- throw Abort.badRequest
- }
- filtered.name = name
- filtered.favoriteCity = favCity
- try filtered.save()
- return try JSON(node: filtered.makeNode())
- }
- // var people = try People(node: request.json)
- // try people.save()
- // return people
- //}
- // PUT request /people
- drop.put("people") { request in
- guard var first = try People.query().first(),
- let favCity = request.data["favoritecity"]?.string else {
- throw Abort.badRequest
- }
- first.favoriteCity = favCity
- try first.save()
- return first
- }
- // DELETE request /people
- drop.delete("people", Int.self) { request, id in
- guard let user = try People.find(id) else {
- throw Abort.notFound
- }
- try user.delete()
- return try JSON(node: People.all().makeNode())
- }
- drop.run()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement