Django: Возможно ли вставить /(слеш) в InMemoryUploadedFile?
У меня есть этот кусочек кода.
avatar = form.cleaned_data.get('avatar')
name_extension = avatar.name # name of file + extension
name, extension = name_extension.split(".") # split name and extension
size = get_image_dimensions(avatar) # image size
file_name = "profileIMG" + '/' + user_name + '.' + extension # the actual string name
# that is going to be inserted in memory
buffer = BytesIO()
buffer.seek(0)
path_and_img_name = InMemoryUploadedFile(buffer, 'ImageField', file_name, # load to memory
'image/' + extension, size, "utf-8")
Я создаю файл класса InMemoryUploaded, единственная проблема в том, что он не сохраняет прямые слэши и все, что за ними. Вывод должен быть таким:
Data type is: <class 'django.core.files.uploadedfile.InMemoryUploadedFile'> and data is: profileIMG/RazzTazz25.jpg
Но вместо этого:
Data type is: <class 'django.core.files.uploadedfile.InMemoryUploadedFile'> and data is: RazzTazz25.jpg
print("Data type is: ", type(path_and_img_name), " and data is: ", path_and_img_name)
Я пытался экранировать "/" с помощью "\/", "\\\/", но ничего не получается... Мне это нужно, чтобы я мог сохранить класс в базе данных, чтобы он направил меня на путь, который я выбрал + изменил имя файла.
Profile.objects.filter(id=actual_image).update(avatar=path_and_img_name, title=title)
Есть идеи?