Quickstarters

Bagaimana Membangun Aplikasi CRUD Dasar dengan Next.js?

50min

Pendahuluan

Dalam panduan ini, kami akan membahas cara membangun aplikasi CRUD lengkap (buat, baca, perbarui, hapus) menggunakan Next.js untuk frontend Anda, dipasangkan dengan Back4app sebagai solusi backend Anda.

Anda akan menyiapkan proyek bernama Basic-CRUD-App-NextJS, merancang skema database dinamis, dan mengintegrasikan fungsionalitas CRUD yang kuat ke dalam aplikasi Next.js Anda.

Kami akan membahas segala hal mulai dari mengonfigurasi proyek Back4app Anda dan merancang koleksi hingga menghubungkan antarmuka Next.js Anda menggunakan Parse SDK atau metode REST/GraphQL.

Pada akhir, Anda akan memiliki aplikasi web siap produksi dengan otentikasi pengguna yang aman dan manajemen data yang efisien.

Poin Penting

  • Membangun aplikasi CRUD penuh dengan Next.js dan Back4app.
  • Belajar merancang skema backend yang fleksibel yang disesuaikan dengan kebutuhan data Anda.
  • Memanfaatkan antarmuka Admin yang intuitif, seret dan lepas untuk manajemen data.
  • Menemukan praktik terbaik untuk penyebaran, termasuk kontainerisasi Docker dan integrasi GitHub.


Prasyarat

Sebelum Anda mulai, pastikan Anda memiliki:

  • Akun Back4app dengan proyek baru yang disiapkan. Untuk panduan, lihat Memulai dengan Back4app.
  • Lingkungan pengembangan Next.js. Gunakan Buat Aplikasi Next atau alat serupa. Pastikan Node.js (versi 14 atau lebih baru) terinstal.
  • Pemahaman dasar tentang JavaScript, Next.js, dan integrasi API. Kunjungi dokumentasi Next.js untuk gambaran umum jika diperlukan.


Langkah 1 – Menyiapkan Proyek Anda

Inisialisasi Proyek Back4app Baru

  1. Masuk ke akun Back4app Anda.
  2. Klik tombol “Aplikasi Baru” di dasbor Anda.
  3. Masukkan nama proyek: Basic-CRUD-App-NextJS dan ikuti petunjuk.
Buat Proyek Baru
Buat Proyek Baru


Proyek baru Anda muncul di dasbor, berfungsi sebagai inti untuk backend Anda.

Buat Aplikasi Next.js Anda

Buka terminal Anda dan jalankan:

Bash


Beralih ke direktori proyek Anda:

Bash


Perintah ini menyiapkan kerangka proyek Next.js yang siap untuk disesuaikan.



Langkah 2 – Membuat Skema Database Anda

Menyusun Model Data Anda

Untuk aplikasi CRUD ini, Anda akan membuat koleksi yang penting. Di bawah ini adalah dua koleksi utama dengan rincian bidang yang memungkinkan fungsionalitas inti.

1. Koleksi Item

Koleksi ini menyimpan rincian tentang setiap item.

Bidang

Tipe Data

Deskripsi

_id

ObjectId

Pengidentifikasi unik yang dihasilkan secara otomatis.

judul

String

Nama atau judul item.

deskripsi

String

Ringkasan singkat tentang item tersebut.

dibuat_pada

Tanggal

Stempel waktu ketika item dibuat.

diperbarui_pada

Tanggal

Timestamp untuk pembaruan terbaru.

2. Koleksi Pengguna

Koleksi ini menangani profil pengguna dan data autentikasi.

Bidang

Tipe Data

Deskripsi

_id

ObjectId

Pengidentifikasi unik yang dihasilkan secara otomatis.

nama pengguna

String

Nama pengguna yang unik untuk pengguna.

email

String

Alamat email yang unik.

hash_kata_sandi

String

Kata sandi yang di-hash dengan aman untuk otentikasi pengguna.

dibuat_pada

Tanggal

Stempel waktu ketika akun dibuat.

diperbarui_pada

Tanggal

Timestamp untuk pembaruan akun terakhir.

Anda dapat secara manual mendefinisikan koleksi ini di dasbor Back4app dengan membuat kelas baru untuk setiap koleksi dan menambahkan kolom yang relevan.

Buat Kelas Baru
Buat Kelas Baru


Buat kolom dengan memilih tipe data yang sesuai, memberi nama kolom, dan mengatur default atau persyaratan.

Buat Kolom
Buat Kolom



Menggunakan Asisten AI Back4app untuk Pengaturan Skema

Asisten AI Back4app menyederhanakan pembuatan skema basis data. Deskripsikan koleksi dan kolom yang Anda inginkan, dan biarkan asisten secara otomatis menghasilkan strukturnya.

Langkah-langkah untuk Menggunakan Asisten AI:

  1. Buka Asisten AI: Temukan di menu dasbor Back4app Anda.
  2. Deskripsikan Model Data Anda: Tempelkan prompt rinci yang menjelaskan koleksi dan persyaratan kolom Anda.
  3. Tinjau dan Terapkan: Periksa skema yang dihasilkan dan terapkan dalam proyek Anda.

Contoh Prompt

Text


Metode ini tidak hanya menghemat waktu tetapi juga memastikan skema Anda konsisten dan dioptimalkan.



Langkah 3 – Mengaktifkan Antarmuka Admin & Fitur CRUD

Menjelajahi Antarmuka Admin

Antarmuka Admin Back4app menawarkan solusi tanpa kode untuk mengelola data backend Anda. Dengan sistem drag-and-drop yang intuitif, Anda dapat dengan mudah melakukan operasi CRUD.

Mengaktifkan Antarmuka Admin

  1. Navigasikan ke bagian “Lainnya” di dasbor Back4app Anda.
  2. Klik pada “Aplikasi Admin” lalu pilih “Aktifkan Aplikasi Admin.”
  3. Konfigurasikan kredensial admin Anda dengan mengatur pengguna admin pertama Anda. Ini juga menetapkan peran seperti B4aAdminUser dan koleksi sistem yang diperlukan.
Aktifkan Aplikasi Admin
Aktifkan Aplikasi Admin


Setelah aktivasi, masuk ke Antarmuka Admin untuk mulai mengelola data Anda.

Dasbor Aplikasi Admin
Dasbor Aplikasi Admin


Melaksanakan Operasi CRUD melalui Antarmuka Admin

Di dalam Antarmuka Admin Anda dapat:

  • Buat Rekaman: Gunakan tombol “Tambah Rekaman” di dalam koleksi (misalnya, Item) untuk memasukkan data baru.
  • Lihat atau Perbarui Rekaman: Klik pada sebuah rekaman untuk memeriksa atau memodifikasi bidangnya.
  • Hapus Rekaman: Gunakan opsi hapus untuk menghapus entri yang sudah tidak relevan.

Antarmuka yang disederhanakan ini membuat pengelolaan data menjadi mudah dan efisien.



Langkah 4 – Menghubungkan Next.js ke Back4app

Dengan backend Anda sudah disiapkan, langkah selanjutnya adalah menghubungkan aplikasi Next.js Anda.

Opsi A: Menggunakan Parse SDK

  1. Instal Parse SDK:
Bash

  1. Inisialisasi Parse di Aplikasi Next.js Anda: Buat file (misalnya, lib/parseConfig.js):
JS

  1. Integrasikan Parse di Halaman Next.js: Sebagai contoh, buat halaman untuk mengambil dan menampilkan item.
JS


Opsi B: Menggunakan REST atau GraphQL

Jika Anda lebih suka tidak menggunakan Parse SDK, Anda dapat mengelola operasi CRUD dengan REST atau GraphQL. Misalnya, untuk mengambil item melalui REST:

JS


Integrasikan panggilan API ini ke dalam komponen Next.js Anda sesuai kebutuhan.



Langkah 5 – Mengamankan Backend Anda

Mengimplementasikan Daftar Kontrol Akses (ACL)

Amankan data Anda dengan menetapkan ACL ke objek. Misalnya, untuk membuat item yang hanya dapat diakses oleh pemiliknya:

JS


Mengonfigurasi Izin Tingkat Kelas (CLPs)

Di dalam dasbor Back4app, sesuaikan CLPs untuk setiap koleksi untuk membatasi akses data hanya untuk pengguna yang berwenang.



Langkah 6 – Menerapkan Autentikasi Pengguna

Menyiapkan Akun Pengguna

Back4app memanfaatkan kelas Pengguna bawaan Parse untuk autentikasi. Di aplikasi Next.js Anda, kelola pendaftaran dan login seperti yang ditunjukkan di bawah ini:

JS


Pendekatan serupa dapat digunakan untuk manajemen login dan sesi. Anda juga dapat mengaktifkan fitur tambahan seperti login sosial, verifikasi email, dan pemulihan kata sandi melalui dasbor Back4app.



Langkah 7 – Menerapkan Frontend Next.js Anda

Opsi penerapan Back4app memungkinkan Anda untuk menghosting aplikasi Next.js Anda dengan mudah, baik melalui integrasi GitHub atau kontainer Docker.

7.1 Membangun Versi Produksi Anda

  1. Buka direktori proyek Anda di terminal.
  2. Jalankan perintah build:
Bash


Ini menghasilkan folder .next yang berisi file statis dan server-rendered yang dioptimalkan.



7.2 Mengorganisir dan Mengunggah Kode Anda

Repositori Anda harus berisi semua file sumber untuk aplikasi Next.js Anda. Struktur yang umum mungkin adalah:

Text


Contoh: lib/parseConfig.js

JS


Contoh: pages/index.js

(Lihat potongan kode yang disediakan di Langkah 4)

Mengirim Kode Anda ke GitHub

  1. Inisialisasi repositori Git:
Bash

  1. Tambahkan semua file:
Bash

  1. Kompilasi perubahan Anda:
Bash

  1. Buat repositori GitHub: Misalnya, beri nama basic-crud-app-nextjs.
  2. Dorong kode Anda:
Bash



7.3 Mengintegrasikan dengan Web Deployment Back4app

  1. Akses Web Deployment: Masuk ke dasbor Back4app Anda, navigasikan ke proyek Anda, dan pilih fitur Web Deployment.
  2. Hubungkan akun GitHub Anda: Ikuti petunjuk untuk menghubungkan repositori Anda.
  3. Pilih Repositori dan Cabang Anda: Pilih repositori (misalnya, basic-crud-app-nextjs) dan cabang (misalnya, main) yang berisi kode Anda.


7.4 Mengonfigurasi Pengaturan Deployment

  • Perintah Build: Jika repositori Anda tidak menyertakan folder .next yang sudah dibangun, tentukan perintah (misalnya, npm run build).
  • Direktori Output: Atur direktori output ke .next sehingga Back4app tahu di mana file-file yang telah dikompilasi berada.
  • Variabel Lingkungan: Tambahkan variabel lingkungan yang diperlukan, seperti kunci API.


7.5 Mengemas Aplikasi Next.js Anda dengan Docker

Jika Anda lebih suka Docker untuk penyebaran, sertakan sebuah Dockerfile di repositori Anda:

Dockerfile


Pilih opsi penyebaran Docker di Back4app untuk mengemas dan menyebarkan aplikasi Anda.



7.6 Meluncurkan Aplikasi Anda

  1. Sebarkan Aplikasi Anda: Klik tombol Sebarkan di Back4app.
  2. Pantau Proses Pembangunan: Back4app akan mengambil kode Anda, menjalankan perintah build, dan menyebarkan aplikasi Anda.
  3. Akses Aplikasi Langsung Anda: Setelah penyebaran selesai, URL akan disediakan di mana aplikasi Next.js Anda dihosting.


7.7 Memverifikasi Penyebaran Anda

  1. Kunjungi URL yang Diberikan: Buka URL di browser Anda.
  2. Uji Fungsionalitas: Pastikan bahwa halaman Anda dimuat dengan benar dan semua operasi CRUD berfungsi.
  3. Perbaiki jika Diperlukan: Gunakan alat pengembang browser dan log Back4app untuk mendiagnosis masalah.


Langkah 8 – Kesimpulan dan Langkah Selanjutnya

Selamat! Anda telah berhasil membangun aplikasi CRUD yang kuat dengan Next.js dan Back4app. Anda telah mengonfigurasi proyek Anda, merancang koleksi yang disesuaikan, dan menghubungkan frontend Next.js Anda dengan backend yang aman.

Langkah Selanjutnya:

  • Tingkatkan Frontend Anda: Perluas aplikasi Next.js Anda dengan fitur-fitur canggih seperti tampilan rinci, fungsionalitas pencarian, atau pembaruan waktu nyata.
  • Tingkatkan Backend Anda: Jelajahi Cloud Functions, integrasi pihak ketiga, atau kontrol akses tambahan.
  • Terus Belajar: Kunjungi dokumentasi Back4app dan sumber daya Next.js untuk optimasi dan kustomisasi lebih lanjut.

Dengan mengikuti tutorial ini, Anda sekarang memiliki keterampilan untuk membuat aplikasi CRUD yang dapat diskalakan dan aman menggunakan Next.js dan Back4app. Selamat coding!