Skip to content
Snippets Groups Projects
Commit faa40e47 authored by zh1516's avatar zh1516
Browse files

file size limit added

parent b42c6cf0
No related branches found
No related tags found
No related merge requests found
......@@ -14,6 +14,6 @@ class Migration(migrations.Migration):
migrations.AlterField(
model_name='audiofile',
name='file',
field=models.FileField(upload_to='documents/%Y/%m/%d/', validators=[base.validators.validate_file_extension]),
field=models.FileField(upload_to='documents/%Y/%m/%d/', validators=[base.validators.validate_file_extension_and_size]),
),
]
......@@ -3,14 +3,14 @@ import os.path
from django.db import models
from django.contrib.auth.models import User
from .validators import validate_file_extension
from .validators import validate_file_extension_and_size
from django.conf import settings
class AudioFile(models.Model):
name = models.CharField(max_length=100)
# owner = models.ForeignKey(User, on_delete=models.SET_NULL, null=True)
file = models.FileField(upload_to='documents/%Y/%m/%d/', validators=[validate_file_extension])
file = models.FileField(upload_to='documents/%Y/%m/%d/', validators=[validate_file_extension_and_size])
created = models.DateTimeField(auto_now_add=True)
class Meta:
......
from django.core.exceptions import ValidationError
def validate_file_extension(value):
def validate_file_extension_and_size(value):
import os
ext = os.path.splitext(value.name)[1] # [0] returns path+filename
filesize = value.size
valid_extensions = ['.wav']
if not ext.lower() in valid_extensions:
raise ValidationError('Unsupported file extension.')
if filesize > 10485760:
raise ValidationError("The maximum file size that can be uploaded is 10MB")
# 1MB -- 1048576
# 5MB -- 5242880
# 10MB -- 10485760
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment