Django: Как извлечь текст из файлов doc и docx, а затем передать его в шаблон для отображения в отдельном div, который впоследствии можно стилизовать?
Я работаю над финальным проектом по CS50W и мне нужно небольшое приложение, которое позволяет пользователям загружать свои "сценарии" - файлы, которые являются либо .doc, либо .docx. Эти файлы затем сохраняются в отдельной папке, а их url сохраняется в поле models.
Я хочу создать отдельное представление для отображения содержимого этих файлов, которое впоследствии я смогу стилизовать отдельно (изменяя цвета фона и текста, размер и т.д.), поэтому я хочу извлечь текст из этих файлов и передать его в мой шаблон. Но когда я делаю это с помощью функции open file, я получаю FileNotFoundError - что, как я предполагаю, связано с тем, что этот файл не является .txt файлом.
Каким образом лучше всего этого достичь?
Вот соответствующая часть моего кода:
class Script(models.Model):
...
upload = models.FileField("Select your script", upload_to="scripts/%Y/%m/%D/", validators=[FileExtensionValidator(allowed_extensions=['doc', 'docx'])])
...
def read(request, script_id):
script = Script.objects.get(pk=script_id)
file = open(script.upload.url, 'r')
content = file.read()
file.close()
return render(request, 'astator/read.html', {
'script':script,
'content':content,
})
Может быть есть лучший способ достичь этого с помощью JS? В любом случае, заранее спасибо за помощь!