Bandicoot
@Bandicoot
Вась-программист

Как в Google Docs сделать динамическую подстановку параметров в документ через API?

Руководитель поставил задачу: есть документы в Google Docs с плейсхолдерами типа {{username}}, для которых нужно сделать обертку на PHP.

Суть в следующем: при переходе по ссылке на странице проекта должен формироваться и скачиваться документ в формате RTF. Т.е. происходит запрос на API Google Docs, документ предварительно загружается в память, подставляются необходимые параметры, далее он выдается пользователю.

Пробовал это сделать через промежуточный шаг: т.е. скачиваем документ в html-формате, через preg_replace подставляем параметры, формируем новый документ и через библиотеку PhpWord отправляем на выдачу. Но проблема оказалась в том, что PhpWord не может нормально сформировать новый док и выдает ошибки. Поэтому надеюсь, что такие операции можно сделать исключительно средствами API.

Реально ли это? Подскажите пожалуйста кто знает.
  • Вопрос задан
  • 153 просмотра
Пригласить эксперта
Ответы на вопрос 1
@fesworkscience
Я сделал по-другому. Есть библиотека docxtpl на python. Можно очень легко заменить значения в файле докс (как форматирование строки). Сохраняю новый файл, а потом отправляю файл на gdrive

php не для файлов =)

doc = DocxTemplate(path_to_template)
context = {
            'theme': theme,
            'regnumber': regnumber,
            'address': address,
            'date': date_created.strftime("%d.%m.%Y")
        }
doc.render(context)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы