Здравствуйте,
Приходя из разработки на Joomla/WordPress, я заинтересован в том, как работает модификация файлов бэкенда Discourse через Docker.
Я прочитал документацию о том, как создать плагин (How can I make my own Discourse plugins? - #2 by merefield), но пока не хочу этим заниматься. Мне просто нужно иметь возможность тестировать код в реальном времени.
В обычной установке MVC без Docker изменение файла через FTP сразу же отражалось в работе. А в Docker я понимаю необходимость пересборки приложения для применения постоянных изменений, но что делать, если нужно тестировать изменения «на лету»?
Кажется, что тестирование изменений кода в реальном времени не работает:
Например, я хочу отключить поиск для анонимных пользователей, поэтому отредактировал:
/var/www/discourse/app/controllers/search_controller.rb, добавив «if current_user.present?» после «def show» и закрыв функцию словом «end» в конце.
Я был удивлен, что это никак не повлияло на фронтенд, и даже переименование контроллера в search_controllerold не имело никакого эффекта на поиск.
Но странно, что переименование изображения в /var/www/discourse/public/images# скрывает его на фронтенде :)!
Может ли кто-нибудь объяснить, как здесь всё устроено? Есть ли какая-то другая кэшированная версия системы, помимо приложения, которое запускается из образа?
Спасибо.