Membuat CRUD Service Produk Bagian 1 - Models Product

Subscribe Dengan Account Google Untuk Membaca Artikel Tanpa Iklan !
Membuat CRUD Service Produk Bagian 1 - Models Product
Lenovo LOQ Gaming 15IRX9 Intel Core i5

Lenovo LOQ Gaming 15IRX9 Intel Core i5

Lenovo LOQ 15IRX9 83DV00A8ID - CI5-13450HX/12GB/512GB/RTX3050 6GB/15.6 FHD IPS/WIN11+OHS2021/LUNA GREY - FREE GIFT - MOUSE - BACKPACK - PERFORMANCE - Processor : Intel® Core™ i5-13450HX, 10C (6P + 4E) / 16T, P-core 2.4 / 4.6GHz, E-core 1.8 / 3.4GHz, 20MB

Free Klik Disini !

Pada tutorial sebelumnya kita sudah membuat service user login, di tutorial ini kita akan belajar bagaimana caranya membuat models untuk service produk yang nantinya service produk akan dapat diakses oleh user yang memiliki token yang valid.

Apa saja feature dari service produk ini ?


Kita asumsikan bahwa user admin bisa menambah, mengedit dan menghapus data produk, serta user dapat mencari data produk dengan keyword tertentu.

1) Django App Product


Buat terlebih dahulu django app product dengan menggunakan perintah berikut:
python manage.py startapp product

Selanjutnya tambahkan django app product ke file settings.py

2) class models Product.


Buat class models Product, perhatikan kode dibawah ini:

from django.db import models
from django.utils import timezone

# Create your models here.

class CreateUpdate(models.Model):
created_date = models.DateTimeField(blank=True, null=True)
update_date = models.DateTimeField(blank=True, null=True)

def save(self, *args, **kwargs):
if not self.created_date:
self.created_date = timezone.now()

self.update_date = timezone.now()
super().save(*args, **kwargs)

class Meta:
abstract = True

class Product(CreateUpdate):
class ProductStatus(models.TextChoices):
PUBLISH = 'PUBLISH', "PUBLISH"
PENDING = 'PENDING', "PENDING"
name = models.CharField(max_length=255)
proice = models.IntegerField()
status = models.CharField(
max_length=15,
choices=ProductStatus.choices,
default=ProductStatus.PENDING
)

class Meta:
db_table = 'product'

Jika dilihat kode diatas terdiri dari dua class models, class CreateUpdate dan class Product. Saat class product di eksekusi secara otomatis akan terbentuk dua field dengan tipe date time.

2) Python Migrate


Setelah anda membuat selesai membuat class Product, hal selanjutnya yang perlu Anda lakukan Adalah menjalankan perintah berikut:
python manage.py makemigrations

Perintah diatas akan memerintahkan django framework untuk membentuk sebuah class abstaraksi pembuatan table product.

Selanjutnya Anda perlu menjalakan perintah berikut yang akan memerintahkan django framewrok menjalankan class abstraksi yang sudah Anda buat tadi.

python manage.py migrate

Jika proses ini sukses maka di database Anda akan terbentuk sebuah table dengan nama product.

Githubhttps://github.com/halovina/hvsuserservice/tree/product-bagian-1

Video :

Baca artikel lainya :