eds/intranet/admin.py

26 lines
867 B
Python
Raw Normal View History

2018-08-16 10:50:00 +02:00
import os
from django.conf import settings
from django.contrib import admin
from intranet.models import IntranetDoc
@admin.register(IntranetDoc)
class IntranetDocAdmin(admin.ModelAdmin):
list_display = ('__str__', 'module', 'authorization')
def save_model(self, request, obj, form, change):
searched_file = 'intranet/{0}'.format(form.cleaned_data['doc'])
try:
doc = IntranetDoc.objects.get(doc=searched_file)
form.save()
# Override previous file
filename = os.path.join(settings.MEDIA_ROOT, searched_file)
file = request.FILES['doc']
with open(filename, 'wb+') as destination:
for chunk in file.chunks():
destination.write(chunk)
except IntranetDoc.DoesNotExist:
super().save_model(request, obj, form, change)