Томас Джефферсон, на бэкенде (mPDF, например) это делается без проблем - там можно назначить PDF как фон для PDF.
На фронте не пробовал, ковыряйте сами какой-нибудь https://pdf-lib.js.org/
Главная проблема - мотивировать пользователей общаться именно у вас на сайте. Будет у вас через полгода семь с половиной сообщений, и нынешний оверинжиниринг станет анекдотом.
Если у вас на сервере достаточно места, вы не будете делать откровенно идиотских запросов к этой таблице и проставите индексы, где надо - никаких проблем с тем, чтобы в базе был десяток миллионов записей, нет.
И предусматривать сложные решения до того, как их наберется хотя бы десяток тысяч, не стоит.
За шит-код извинить можно, а вот за то, что он приведен целиком, а не только те строки, в которых испытываются проблемы - незачет. Уж потрудись вычленить проблему, чтоб ее кто-то стал помогать тебе решать.
Впрочем, добрый человек Wataru уже сказал все, что требуется для решения того, что упомянуто в вопросе. Разбирайся.
Это же явно строчка из синглтона. При первом запросе инициализируется и сохраняется, потом возвращается сохраненное.
Правда, именно то, что вы этого не поняли, говорит против такого кода больше, чем любые стандарты и теории...
А вы его точно видели не на винде? Сколько пишу на wx - никакой особенной виндовости в нем не замечал.
Кроме разве что общей архитектуры, слизанной с MFC и борландовского гуя.
Я тут вижу два варианта.
Или у вас снаружи Qt, а внутри кромешный WinAPI, костыли и захардкоженные пути на диск С.
Или вы просто ненавидите эту работу и качество результата вас вообще не волнует.
adrian1, если ставил в виртуалку - это вполне естественно. У меня тоже тормозит. Но на то, чтобы собрать приложение в XCode, кое-как протестировать в эмуляторе и отправить в магазин, особой реактивности и не нужно.
Кирилл Горелов, предположу, что папки сервера монтируются по какому-то кривому пути, который редактор при драг-дропе просто не распознает, как путь, в принципе.
Для SFTP хорошо бы прописать строчку в fstab, а не пользоваться гномовскими утилитами.
Кирилл Горелов, хорошее начало. Теперь еще пошагово и подробно описать, как выглядит "пропавшая возможность" - и вполне возможно, что по ходу выполнения этой логической работы вы сами обнаружите проблему.
На фронте не пробовал, ковыряйте сами какой-нибудь https://pdf-lib.js.org/