35275-vm/core/models.py
Flatlogic Bot 5614a714bc 1.1 fix
2025-10-28 04:58:10 +00:00

35 lines
1.1 KiB
Python

from django.db import models
class Application(models.Model):
name = models.CharField(max_length=255)
version = models.CharField(max_length=100)
vendor = models.CharField(max_length=255)
def __str__(self):
return f"{self.name} {self.version}"
class Vulnerability(models.Model):
SEVERITY_CHOICES = [
('Critical', 'Critical'),
('High', 'High'),
('Medium', 'Medium'),
('Low', 'Low'),
]
STATUS_CHOICES = [
('New', 'New'),
('Acknowledged', 'Acknowledged'),
('In-Progress', 'In-Progress'),
('Resolved', 'Resolved'),
]
cve_id = models.CharField(max_length=50, unique=True)
description = models.TextField()
severity = models.CharField(max_length=10, choices=SEVERITY_CHOICES)
application = models.ForeignKey(Application, on_delete=models.CASCADE, related_name='vulnerabilities')
status = models.CharField(max_length=20, choices=STATUS_CHOICES, default='New')
discovered_at = models.DateTimeField(auto_now_add=True)
last_updated = models.DateTimeField(auto_now=True)
def __str__(self):
return self.cve_id