ActiveJob: создание карты сайта в ответ на создание контента
В моем приложении на Rails 4.2 я использую гем sitemap_generator для генерации карт сайта. И используйте планировщик Heroku для выполнения граблей. Я думаю, что было бы лучше, если карта сайта генерируется, когда появляется новый контент, или выполнять ручное действие из панели администратора, нажав кнопку, чтобы сгенерировать карту сайта и проверить связь с поисковыми системами.
Итак, в моем ActiveJob я выполняю следующее в фоновом режиме JobRake::Task['sitemap:refresh'].invoke
Но это дает мне ошибку, что он не знает, как построить эту задачу.
RuntimeError: Don't know how to build task 'sitemap:refresh' (see --tasks)
Спасибо,
1 ответ
Похоже, проблема в том, что грабли не загружены. Вы можете сначала загрузить задачи, а затем вызвать. Что-то перечисленное ниже должно помочь:
NameOfYourApp::Application.load_tasks
Rake::Task['sitemap:refresh'].invoke