Remove: Token model use token field only in ticket model

This commit is contained in:
Stepan Zhukovsky 2023-08-09 01:59:17 +09:00
parent 116c0e4f41
commit cc7043f013
3 changed files with 61 additions and 23 deletions

View File

@ -1,6 +1,6 @@
from django.contrib import admin
from .models import Platform, Archive, Ticket, Token
from .models import Platform, Archive, Ticket
# Register your models here.
@ -23,4 +23,3 @@ class TokenAdmin(admin.ModelAdmin):
admin.site.register(Platform, PlatformAdmin)
admin.site.register(Ticket, TicketAdmin)
admin.site.register(Archive, ArchiveAdmin)
admin.site.register(Token, TokenAdmin)

View File

@ -0,0 +1,47 @@
# Generated by Django 4.2 on 2023-08-08 16:52
import django.core.validators
from django.db import migrations, models
import django.db.models.deletion
import uuid
class Migration(migrations.Migration):
dependencies = [
('collector', '0005_token_archive_token'),
]
operations = [
migrations.RemoveField(
model_name='archive',
name='token',
),
migrations.RemoveField(
model_name='archive',
name='user',
),
migrations.AddField(
model_name='ticket',
name='token',
field=models.UUIDField(default=uuid.uuid4, editable=False),
),
migrations.AddField(
model_name='ticket',
name='upload',
field=models.IntegerField(default=5, validators=[django.core.validators.MaxValueValidator(10), django.core.validators.MinValueValidator(1)]),
),
migrations.AlterField(
model_name='platform',
name='name',
field=models.CharField(max_length=20, unique=True),
),
migrations.AlterField(
model_name='ticket',
name='platform',
field=models.ForeignKey(db_column='platform_name', on_delete=django.db.models.deletion.CASCADE, to='collector.platform', to_field='name'),
),
migrations.DeleteModel(
name='Token',
),
]

View File

@ -1,5 +1,5 @@
import hashlib
import uuid
import hashlib
from functools import partial
from django.core.validators import MaxValueValidator, MinValueValidator
@ -39,8 +39,6 @@ class Archive(models.Model):
db_column='ticket_number',
on_delete=models.CASCADE
)
token = models.ForeignKey('Token', on_delete=models.CASCADE)
user = models.ForeignKey(User, on_delete=models.CASCADE)
def save(self, *args, **kwargs):
# calculate sha 1 hash sum and write md5 field to db
@ -60,7 +58,7 @@ class Archive(models.Model):
class Platform(models.Model):
name = models.CharField(max_length=20)
name = models.CharField(max_length=20, unique=True)
pretty_name = models.CharField(max_length=20)
def get_absolute_url(self):
@ -74,9 +72,19 @@ class Ticket(models.Model):
number = models.IntegerField(unique=True, db_index=True)
resolved = models.BooleanField(default=False)
note = models.TextField(blank=True)
token = models.UUIDField(default=uuid.uuid4, editable=False)
attempts = models.IntegerField(default=5, validators=[
MaxValueValidator(10),
MinValueValidator(1)
])
time_create = models.DateTimeField(auto_now_add=True)
time_update = models.DateTimeField(auto_now=True)
platform = models.ForeignKey('Platform', on_delete=models.CASCADE)
platform = models.ForeignKey(
'Platform',
to_field='name',
db_column='platform_name',
on_delete=models.CASCADE
)
user = models.ForeignKey(User, on_delete=models.CASCADE)
class Meta:
@ -90,19 +98,3 @@ class Ticket(models.Model):
def __str__(self):
return str(self.number)
class Token(models.Model):
id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
expires = models.IntegerField(default=5, validators=[
MaxValueValidator(10),
MinValueValidator(1)
])
blocked = models.BooleanField(default=False)
user = models.ForeignKey(User, on_delete=models.CASCADE)
def get_absolute_url(self):
return reverse('collector:token')
def __str__(self):
return str(self.id)