Tutorial Membuat CRUD di Adonis JS #5 : Hapus Data Dari Database


Tutorial Membuat CRUD di Adonis JS #5 : Hapus Data Dari Database

Tutorial Membuat CRUD di Adonis JS #5 : Hapus Data Dari Database - Halo teman-teman semuanya, di artikel sebelumnya kita sudah membahas cara edit dan update data ke dalam database dengan Adonis JS.

Di artikel kali ini kita semua akan belajar tentang cara menghapus data dari database dengan Adonis JS.

Langsung saja kita mulai, sekarang silahkan teman-teman buka file PostController.js dan tambahkan 1 fungsi berikut ini di dalam class PostController :

async delete({ request, response, view, params, session}) {
  const id = params.id
  const post = await Post.find(id)
  await post.delete()

  session.flash({ notification: 'Data Berhasil Dihapus!' })
  return response.route('posts.index')
}

Jika kita perhatikan, kita sudah menambahkan 1 fungsi baru dengan nama delete , fungsi delete ini kita gunakan untuk menghapus data dari database berdasarkan parameter ID.

Jika file PostsController.js ditulis dengan lengkap, kurang lebih seperti berikut ini :

'use strict'

const Post = use('App/Models/Post')

class PostController {

  async index({ request, response, view }) {
    const posts = await Post.all()

    return view.render('posts.index', { posts: posts.rows })
  }

  create({ request, response, view }) {
    return view.render('posts.create')
  }

  async store({ request, response, view, session }) {
    const post = new Post()

    post.title    = request.input('title')
    post.content  = request.input('content')
    await post.save()

    session.flash({ notification: 'Data Berhasil Disimpan!' })
    return response.route('posts.index')

  }

  async edit({ request, response, view, params }) {
    const id    = params.id
    const post  = await Post.find(id)

    return view.render('posts.edit', { post: post })
  }

  async update({ request, response, view, params, session }) {
    const id    = params.id
    const post  = await Post.find(id)

    post.title    = request.input('title')
    post.content  = request.input('content')
    await post.save()

    session.flash({ notification: 'Data Berhasil Diupdate!' })
    return response.route('posts.index')
  }

  async delete({ request, response, view, params, session}) {
    const id = params.id
    const post = await Post.find(id)
    await post.delete()

    session.flash({ notification: 'Data Berhasil Dihapus!' })
    return response.route('posts.index')
  }

}

module.exports = PostController

Setelah kita berhasil membuat 1 fungsi baru di controller, terakhir, sekarang kita akan menambahkan route baru, silahkan buka file routes.js di dalam folder start dan tambahkan kode berikut ini :

Route.get('/posts/delete/:id', 'PostController.delete').as('posts.delete')

Dan sekarang teman-teman bisa membuka project dan silahkan hapus salah satu data, jika berhasil kurang lebih tampilannya seperti berikut ini :


Sampai disini pembahasan tutorial tentang Membuat CRUD di Adonis JS, kita akan lanjutkan tutorial yang lainnya dengan mencoba studi kasus langsung.

Terima Kasih


Fika Ridaul Maulayya
Full-Stack Developer, Content Creator and CO-Founder SantriKoding.com

Suka dengan tulisan di SantriKoding? Kamu bisa memberikan dukungan dengan berdonasi atau bagikan konten ini di sosial media. Terima kasih atas dukungan Anda!

KEBIJAKAN KOMENTAR

Saat memberikan komenatar silahkan memberikan informasi lengkap tentang error, seperti: screenshot, link kode, dll. Baca aturan komentar kami