root/tester/models.py

Revision 3d3414278502ad60842ab623bcae9692a7b9ec7b, 1.4 KB (checked in by Frederic Lepied <frederic.lepied@…>, 3 years ago)

add an str method to display objects more cleanly

  • Property mode set to 100644
Line 
1from django.db import models
2from pxe.models import *
3
4class TestName(models.Model):
5    name = models.CharField(max_length=100)
6    available = models.BooleanField()
7   
8    def __str__(self):
9        return self.name
10   
11class SystemVersion(models.Model):
12    name = models.CharField(max_length=100)
13
14    def __str__(self):
15        return self.name
16
17class TestLog(models.Model):
18    STATUS_CHOICES = (
19        ('R', 'Requested'),
20        ('S', 'Sent'),
21        ('D', 'Done'),
22        ('E', 'Error'),
23        )
24    status = models.CharField(max_length=1, choices=STATUS_CHOICES, default='R')
25   
26    date = models.DateTimeField(auto_now=True, auto_now_add=True)
27    system = models.ForeignKey(System)
28    test_name = models.ForeignKey(TestName)
29    warnings = models.IntegerField(default=0)
30    infos = models.IntegerField(default=0)
31    errors = models.IntegerField(default=0)
32    version = models.ForeignKey(SystemVersion, null=True)
33
34    def __str__(self):
35        return "%s %s" % (self.test_name, self.status)
36
37class InfoLine(models.Model):
38    type = models.CharField(max_length=1)
39    log = models.ForeignKey(TestLog)
40    text = models.CharField(max_length=100)
41
42    def __str__(self):
43        return "%s for %s" % (self.type, self.log)
44
45from django.contrib import admin
46admin.site.register(SystemVersion)
47admin.site.register(TestName)
48admin.site.register(TestLog)
49admin.site.register(InfoLine)
Note: See TracBrowser for help on using the browser.