Я создаю веб-страницу, используя Django, который считает монеты.У каждой монеты есть свой coin_type и coin_count.Я также хочу иметь статическую итоговую переменную total, которая вычисляет общее количество монет.Я хочу создать функцию, которая сможет вычислять сумму coin_count всех экземпляров и присваивать это значение итоговому значению.Однако, когда я объявляю «total» внутри класса, его значение отличается для каждого экземпляра.Более того, я не знаю, как иметь десятичное поле для статической переменной в интерфейсе администратора Django.
В приведенном ниже коде я создаю глобальную переменную "total", чтобы ее значение не изменялось дляэкземпляры каждого класса.Однако каждый раз, когда я меняю код или перезагружаю сервер, его значение сбрасывается на 0.
Это мой файл models.py
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.db import models
# Create your models here.
total = 0
class Coin(models.Model):
coin_type = models.CharField(max_length=100)
coin_count = models.DecimalField(max_digits=3,decimal_places=0)
def __str__(self):
return self.coin_type
def count(self):
return self.coin_count
def increase(self):
self.coin_count += 1
@staticmethod
def find_total():
global total
return total
Я хочу иметь статическую переменную "total ", который имеет одинаковое значение для всех экземпляров, и статический метод" figure_total ", который вычисляет сумму" coin_count "всех экземпляров.Если это возможно, может кто-нибудь помочь мне создать десятичное поле для «всего» в интерфейсе администратора Django?