У меня есть несколько приложений (приложение администратора, приложение «public»/non-admin и приложение веб-службы), которые используют общую базу данных.Совместное использование загруженных файлов между несколькими приложениями Rails
У меня есть приложения для совместного использования моделей и другого кода, если это необходимо, поэтому у меня нет нескольких копий одного и того же кода. Однако одной задачей, которую мне еще предстоит настроить, является совместное использование файлов, загружаемых между приложениями. Я использую Paperclip для успешной загрузки файлов в мои приложения, но если он загружает файлы в приложение, выполняющее загрузку.
В идеале, я хотел бы иметь возможность обслуживать все файлы из веб-службы. Моя идея состояла в том, что мне понадобится какая-то задача, выполняемая каждый раз, когда новый файл загружается в любое из приложений, чтобы файл был создан в файловой структуре веб-службы.
Я знаю, что я мог бы легко выполнить обслуживающие файлы из одного приложения, если я загрузил файлы в базу данных (это то, как я это сделал в подобном наборе приложений), но я не уверен, что это лучший путь к пойдите для управления/обслуживания файлов. Еще одна идея, которую я имел, заключалась в хранении файлов в базе данных и использовании веб-службы для их обслуживания и создания файла на диске по первому запросу. После первого запроса файла веб-служба будет обслуживать файл с диска, а не из базы данных.
Есть ли у кого-нибудь идеи о том, каким может быть лучший способ добиться этого? Или какие-нибудь лучшие идеи?
Заранее благодарю вас за любые отзывы, которые могут возникнуть по этому вопросу.
Попытка не пропустить очевидное здесь, но указали ли вы, что у вас нет общей файловой системы, доступной для всех трех приложений?Являются ли они файлами, которые должны быть защищены с помощью аутентификации или их можно обслуживать с статического ресурса? – MattMcKnight
Не требуется аутентификация, кроме того, что может быть предоставлено в самих приложениях. Их можно было бы обслуживать с статического актива, который, я думаю, является тем, чего я на самом деле пытаюсь достичь. –