Statistics
| Branch: | Tag: | Revision:

root / policy / django / models.py @ 17935f41

History | View | Annotate | Download (1.5 kB)

1
from django.db import models
2

    
3
class Limits(models.Model):
4
    lim_id = models.IntegerField(primary_key=True)
5
    lim_desc = models.CharField(max_length=45)
6

    
7
class Users(models.Model):
8
    user_id = models.IntegerField(primary_key=True)
9
    user_name = models.CharField(max_length=255)
10
    user_credit = models.IntegerField()
11
    user_quota = models.IntegerField()
12
    user_created = models.DateField()
13
    limits = models.ManyToManyField(Limits, through='UserLimit')
14

    
15
class UserLimit(models.Model):
16
    lim_id = models.ForeignKey(Limits, primary_key=True)
17
    user_id = models.ForeignKey(Users, primary_key=True)
18
    ul_value = models.IntegerField()
19

    
20
class Flavor(models.Model):
21
    flv_id = models.IntegerField(primary_key=True)
22
    flv_desc = models.CharField(max_length=255)
23
    flv_cost_active = models.IntegerField()
24
    flv_cost_inactive = models.IntegerField()
25
    flv_detailed = models.CharField(max_length=1000)
26

    
27
class VMachine(models.Model):
28
    vm_id = models.IntegerField(primary_key=True)
29
    vm_alias = models.CharField(max_length=255)
30
    vm_created = models.DateTimeField()
31
    vm_state = models.IntegerField()
32
    vm_started = models.DateTimeField()
33
    user_id = models.ForeignKey(Users)
34
    flv_id = models.ForeignKey(Flavor)
35

    
36
class ChargingLog(models.Model):
37
    cl_id = models.IntegerField(primary_key=True)
38
    vm_id = models.ForeignKey(VMachine)
39
    cl_date = models.DateTimeField()
40
    cl_credit = models.IntegerField()
41
    cl_message = models.CharField(max_length=1000)