67 lines
2.4 KiB
Python
67 lines
2.4 KiB
Python
from django.db import models
|
|
from django.contrib.auth.models import User
|
|
import uuid
|
|
from storages.backends.s3boto3 import S3Boto3Storage
|
|
|
|
|
|
|
|
class FailedTransactions(models.Model):
|
|
uuid = models.UUIDField(max_length=36, primary_key=True, default=uuid.uuid4, editable=True)
|
|
creator = models.ForeignKey(
|
|
User,
|
|
on_delete=models.CASCADE,
|
|
null=True,
|
|
blank=True,
|
|
related_name="transcation_created"
|
|
)
|
|
transaction_hash = models.CharField(max_length=255, null=True, blank=True)
|
|
transaction_type = models.CharField(max_length=255, null=True, blank=True)
|
|
transaction_status = models.CharField(max_length=255, null=True, blank=True)
|
|
transaction_error = models.TextField(null=True, blank=True)
|
|
transaction_data = models.TextField(null=True, blank=True)
|
|
service_name = models.CharField(max_length=255, null=True, blank=True)
|
|
service_id = models.CharField(max_length=255, null=True, blank=True)
|
|
created_at = models.DateTimeField(auto_now_add=True)
|
|
|
|
# app/storage_backends.py
|
|
|
|
class PrivateMediaStorage(S3Boto3Storage):
|
|
location = 'private'
|
|
default_acl = 'private'
|
|
file_overwrite = False
|
|
|
|
class PublicMediaStorage(S3Boto3Storage):
|
|
location = 'public'
|
|
default_acl = 'public-read'
|
|
file_overwrite = False
|
|
|
|
class MNFServersFile(models.Model):
|
|
uuid = models.UUIDField(max_length=36, primary_key=True, default=uuid.uuid4, editable=True)
|
|
project_id = models.CharField(max_length=255, null=True, blank=True)
|
|
user = models.ForeignKey(
|
|
User,
|
|
on_delete=models.CASCADE,
|
|
null=True,
|
|
blank=True,
|
|
related_name="user_file"
|
|
)
|
|
file_name = models.CharField(max_length=255, null=True, blank=True)
|
|
file_path = models.CharField(max_length=255, null=True, blank=True)
|
|
file_size = models.CharField(max_length=255, null=True, blank=True)
|
|
file_type = models.CharField(max_length=255, null=True, blank=True)
|
|
created_at = models.DateTimeField(auto_now_add=True)
|
|
file_url = models.CharField(max_length=255, null=True, blank=True)
|
|
file = models.FileField(upload_to='media/s3Files/', null=True, blank=True)
|
|
private_s3_file = models.FileField(
|
|
storage=PrivateMediaStorage(),
|
|
upload_to='media/s3Files/private/',
|
|
null=True,
|
|
blank=True
|
|
)
|
|
public_file = models.FileField(
|
|
storage=PublicMediaStorage(),
|
|
upload_to='media/s3Files/public/',
|
|
null=True,
|
|
blank=True
|
|
)
|