Conversion_Kitchen_Code/kitchen_counter/Blockchain2/models.py

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
)