Skip to content

Instantly share code, notes, and snippets.

@solanoize
Created October 10, 2015 15:19
Show Gist options
  • Select an option

  • Save solanoize/9e21a42f141be0b972d3 to your computer and use it in GitHub Desktop.

Select an option

Save solanoize/9e21a42f141be0b972d3 to your computer and use it in GitHub Desktop.
membuat validasi quantity di model `DetilPenjualan` untuk `jumlah` pesanan dan `Barang` untuk `stok` saat mencatat detil penjualan barang dengan `Nota`

File penjualan/admin.py

Bagian Import

from django.contrib import admin
from django.contrib.admin import AdminSite
from django.core.exceptions import ValidationError
from django import forms

# models penjualan
from .models import Barang
from .models import Nota
from .models import DetilPenjualan
class FormDetilPenjualan(forms.ModelForm):

    class Meta:
        model = DetilPenjualan
        fields = '__all__'
        exclude = ()

    def clean(self):
        stok = self.cleaned_data.get('kode_barang').stok
        jumlah = self.cleaned_data.get('jumlah')

        if int(jumlah) > int(stok):
            raise forms.ValidationError("")
        return self.cleaned_data

class AdministrasiDetilPenjualan(admin.ModelAdmin):
    fields = ('nota', 'kode_barang', 'jumlah')
    form = FormDetilPenjualan
    '''
    def save_model(self, request, obj, form, change):
        if int(request.POST['jumlah']) > obj.kode_barang.stok:
            raise forms.ValidationError(u'That email address already exists.')
    '''
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment