Существует ли автоматический способ запуска миграции базы данных для пользовательского плагина, если она еще не была выполнена? Вместо ручного запуска миграции БД в новой установке Discourse?
Как вы запускаете Discourse?
Это должно быть учтено, если вы используете нашу установку через Docker.
Запуск среды разработки Discourse
Вы не запускаете миграции внутри плагина.
В среде разработки их выполняют из консоли.
Почему? Потому что при развертывании плагина миграции берет на себя основное приложение.
Это выходит за рамки того, что должен делать плагин.
(К сведению: это не означает, что вы не должны включать миграции в плагин, например, если вы изменяете базу данных, но сам плагин не будет выполнять эти миграции)
Верно, я использую консоль для выполнения миграций в среде разработки. Мой вопрос: является ли это правильным подходом и нужно ли мне также запускать их вручную через консоль в производственной среде Docker?
Это будет выполняться автоматически в рамках (пере)сборки.