Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import Vapor
- struct UsersController: RouteCollection {
- func boot(router: Router) throws {
- // user route için /api/users üzerinden erişmek istiyorum.
- let usersRoutes = router.grouped("api", "users")
- // user oluşturmak için yazdığımız fonksiyonu kaydettik.
- usersRoutes.post(use: createUser)
- // get request'i ile tüm user'ları getireceğiz.
- usersRoutes.get(use: getAllUsers)
- // parametre ile get isteği yapıp tek bir user getireceğiz.
- usersRoutes.get(User.parameter, use: getUser)
- }
- // user oluşturmak için kullandığımız fonksiyon
- func createUser(_ req: Request) throws -> Future<User> {
- return try req.content.decode(User.self).flatMap(to: User.self, { user in
- return user.save(on: req)
- })
- }
- // tüm user'ları getirecek fonksiyon
- func getAllUsers(_ req: Request) throws -> Future<[User]> {
- return User.query(on: req).all()
- }
- // tek bir user getirmek için kullanacağımız fonksiyon
- // user'ı parametre ile getireceğimiz için
- // User sınıfına Parameter extension'ı ekliyoruz.
- func getUser(_ req: Request) throws -> Future<User> {
- return try req.parameter(User.self)
- }
- }
- extension User: Parameter {}
Add Comment
Please, Sign In to add comment