diff --git a/statistics/models.py b/statistics/models.py index 9bf6b38..c222edc 100644 --- a/statistics/models.py +++ b/statistics/models.py @@ -7,6 +7,12 @@ from mydefs import MyGenericIPAddressField from .fields import UnixDateTimeField +def get_dates(): + tables = connection.introspection.table_names() + tables = [t.replace('flowstat_', '') for t in tables if t.startswith('flowstat_')] + return [datetime.strptime(t, '%d%m%Y').date() for t in tables] + + class StatManager(models.Manager): def chart(self, ip_addr, count_of_parts=12, want_date=date.today()): @@ -41,11 +47,6 @@ class StatManager(models.Manager): else: return - def get_dates(self): - tables = connection.introspection.table_names() - tables = [t.replace('flowstat_', '') for t in tables if t.startswith('flowstat_')] - return [datetime.strptime(t, '%d%m%Y').date() for t in tables] - class StatElem(models.Model): cur_time = UnixDateTimeField(primary_key=True) @@ -55,11 +56,19 @@ class StatElem(models.Model): objects = StatManager() + # ReadOnly def save(self, *args, **kwargs): - return + pass + # ReadOnly def delete(self, *args, **kwargs): - return + pass + + def delete_month(self): + cursor = connection.cursor() + table_name = self._meta.db_table + sql = "DROP TABLE %s;" % table_name + cursor.execute(sql) @staticmethod def percentile(N, percent, key=lambda x:x):