Skip to content

Instantly share code, notes, and snippets.

@uyab
Last active August 29, 2017 00:34
Show Gist options
  • Save uyab/8c7e6085690af10e8527ad046d2b56e6 to your computer and use it in GitHub Desktop.
Save uyab/8c7e6085690af10e8527ad046d2b56e6 to your computer and use it in GitHub Desktop.
RESTful Controllers

Soal Restful Controllers

Ngomik.com adalah sebuah platform untuk mempublikasikan komik bagi komunitas. Anda diminta untuk membuat sebuah website sederhana, versi minimalis dari ngomik.com, dengan fungsional seperti berikut:

  • Guest bisa melakukan registrasi menjadi Member

    • Guest harus mengaktivasi akunnya lewat link yang dikirim via email
  • Member bisa login

  • Member bisa mengedit profilnya sendiri

  • Member bisa menghapus akunnya sendiri

  • Member bisa membuat sebuah series komik baru

    • Member bisa mengedit dan menghapus komiknya sendiri
  • Member bisa menambah chapter (FYI, satu komik terdiri dari bbrp chapter)

    • Member bisa mengedit dan menghapus chapter
  • Member bisa melakukan subscribe dan unsubscribe terhadap suatu komik

  • Member bisa memberikan komentar ke chapter

    • Member juga bisa mengedit dan menghapus komentarnya sendiri
    • Author komik bisa menghapus komentar di chapter miliknya
    • Admin bisa menghapus komentar di semua chapter

Dari fungsionalitas diatas, rancanglah daftar routes yang akan Anda buat, dengan format HTTP_METHOD controller/method atau HTTP_METHOD controller/[param_id]/method atau yang lain sesuai kebutuhan.

Contoh (meski kurang tepat, jadi jangan dicontoh beneran):

  1. GET GuestController/showRegistrationForm
  2. POST GuestController/registration
  3. GET GuestController/activation/{code}
  4. POST ComicController/{comic_id}/addChapter
  5. DELETE CommentController/deleteByAuthor/{comment_id}

Catatan

Jika ada yang kurang jelas, silakan membuat asumsi sendiri, jangan lupa tuliskan asumsi Anda di jawaban yang dikirim.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment