25 lines
749 B
Python
25 lines
749 B
Python
import mimetypes
|
|
import os
|
|
|
|
from django.http import HttpResponse, FileResponse
|
|
from django.conf import settings
|
|
|
|
# Create your views here.
|
|
def media(request, media_name):
|
|
#TODO: Check if user is valid
|
|
if settings.DEBUG:
|
|
# deliver file from Django
|
|
file_path = os.path.join(settings.MEDIA_ROOT, media_name)
|
|
mimetype = mimetypes.guess_type(media_name)
|
|
|
|
response = FileResponse(open(file_path, "rb"))
|
|
response["Content-Type"] = mimetype
|
|
|
|
return response
|
|
else:
|
|
mimetype = mimetypes.guess_type(image_name)
|
|
response = HttpResponse()
|
|
response["Content-Type"] = mimetype
|
|
response["X-Sendfile"] = os.path.join(settings.MEDIA_ROOT, media_name)
|
|
return response
|