I have a user form through which I can save data to the database.
I want certain fields to be auto calculated while I am filling the the form.
For e.g. Net Weight = Gross Weight - Tier Weight and stuff like that.
I also want to add RADIO BUTTONS for fields like LOADING, UNLOADING, DEDUCTION, etc. where values will be calculated when user selects one of the option given.
Design of the type of form I want, I just don't know how to make that using Django:
I am using Django Model Form.
Models.py
class PaddyPurchase(models.Model):
ref_no = models.IntegerField(primary_key='true')
token_no = models.CharField(max_length=20, unique='true')
agent_name = models.CharField(max_length=20)
trip_no = models.IntegerField()
date = models.DateField()
vehicle_no = models.CharField(max_length=10)
bora = models.IntegerField()
katta = models.IntegerField()
plastic = models.IntegerField()
farmer_name = models.CharField(max_length=30)
farmer_address = models.CharField(max_length=40)
farm_mob = models.CharField(max_length=10)
gross_weight = models.IntegerField()
tier_weight = models.IntegerField()
net_weight = models.IntegerField()
bora_weight = models.IntegerField()
suddh_weight = models.FloatField()
loading = models.IntegerField()
unloading = models.IntegerField()
unloading_point = models.CharField(max_length=20)
dharamkanta_man = models.CharField(max_length=10)
rate = models.IntegerField()
bardana = models.CharField(max_length=7)
gross_total = models.IntegerField()
deduction = models.IntegerField()
kanta = models.IntegerField()
hemali = models.IntegerField()
our_vehicle_rent = models.IntegerField()
agent_commission = models.IntegerField()
other_amt = models.IntegerField()
other_remarks = models.CharField(max_length=50)
advance = models.IntegerField()
net_total = models.IntegerField()
# For returning data in ADMIN SITE
def __str__(self):
return 'PaddyPurchase'
Forms.py
class PaddyPurchaseForm(forms.ModelForm):
# Code for changing DATE FORMAT (from YYYY-MM-DD to DD-MM-YYYY)
date = forms.DateField(
widget=forms.DateInput(format='%d%m%Y'),
input_formats=['%d-%m-%Y']
)
class Meta:
model = PaddyPurchase
fields = ['ref_no',
'token_no',
'agent_name',
'trip_no',
'date',
'vehicle_no',
'bora',
'katta',
'plastic',
'farmer_name',
'farmer_address',
'farm_mob',
'gross_weight',
'tier_weight',
'net_weight',
'bora_weight',
'suddh_weight',
'loading',
'unloading',
'unloading_point',
'dharamkanta_man',
'rate',
'bardana',
'gross_total',
'deduction',
'kanta',
'hemali',
'our_vehicle_rent',
'agent_commission',
'other_amt',
'other_remarks',
'advance',
'net_total'
]
Viwes.py
def add_record(request):
if request.method == "POST":
form = PaddyPurchaseForm(request.POST)
if form.is_valid():
form.save(commit=True)
messages.success(request, "Data Saved Successfully. - Lucky")
return index(request)
else:
messages.error(request, "Error!!!")
return redirect("index")
source https://stackoverflow.com/questions/72004858/calculate-input-fields-while-user-is-filling-data-in-form-django-model-form
Comments
Post a Comment