2017-10-17 6 views
0

j'ai un modèle que je l'ai ajouté à mon django panneau d'administrationcomment calculer le terrain dans le modèle de django admin

from django.db import models 
from django.contrib import admin 

class Employee(models.Model): 
    fee = models.IntegerField(null=False) 
    vat = models.IntegerField(null=False) 

et ont ajouté ce mon panneau d'administration

admin.site.register(Employee, EmployeeAdmin) 
readonly_fields('vat',) 

donc tout en ajoutant une nouvelle employé, l'administrateur saisit le montant de la taxe, id comme TVA à calculer et indiqué comme résultat direct de l'entrée dans la cuve. comment peut créer ce calcul à la volée que l'administrateur entre dans les frais

+0

Votre question est tout à fait unintellegible. Cela dit, pour effectuer des calculs "à la volée", vous aurez besoin de plus de js que de code django. – abidibo

+0

https://stackoverflow.com/questions/20220394/django-admin-how-to-calculate-a-field-value-depending-on-other-model-field-val pourrait aider – Anshul

Répondre

0

Je pourrais être complètement faux ici, mais ne pourriez-vous pas utiliser une propriété pour cela au lieu de stocker vat dans la base de données?

sur votre modèle, déclare:

@property 
def vat(self): 
    return calculation_of_vat(self.fee) 
0

vous pouvez remplacer la méthode de sauvegarde:

def save(self, *args, **kwargs): 
    self.vat=self.calculate_vat(self.fee) 
    super(Product, self).save(*args, **kwargs)