Отображение переменных Discourse на других страницах

Здравствуйте.
Я хочу отображать статистику сайта со страницы /about на главной странице в сочетании с другим плагином.

Например, я добавил Members: {{number model.stats.user_count}} в файл .hbs плагина, но при пересборке Discourse там отображается только 0. У меня больше 0 пользователей. :slight_smile:

Есть ли какие-то идеи или подсказки?

Трудно сказать, не зная больше о плагине. Возможно, будет проще получить эти данные со страницы, где они уже есть.

По сути, я пишу плагин для отображения статистики форума внизу страницы, аналогично тому, как это делает vBulletin.

На данный момент у меня есть следующее:
SiteStats

В директории моего плагина файл /assets/javascripts/discourse/components/site-stats.hbs выглядит так:

<div class="board-statistics-headrow">{{d-icon "far-chart-bar"}}  {{i18n 'about.stats'}}</div>
<div class="board-statistics-row">
  Темы: {{number model.stats.topic_count}}  Сообщения: {{number model.stats.post_count}}  Участники: {{number model.stats.user_count}}
</div>
</div>

Я взял {{number model.stats.topic_count}} из файла about.hbs в репозитории Discourse на GitHub.

У вас есть два способа сделать это.

Просто проверьте, какой (Rails) контроллер вызывается на странице /about, чтобы получить нужные данные.

В методе model вашего файла маршрута Ember вы можете вызвать этот контроллер через AJAX и получить требуемые данные.

Или же,

Если вы написали свой собственный контроллер, создайте новый метод, скопируйте логику из найденного контроллера в свой новый контроллер и (возможно) отфильтруйте нужные данные, если это требуется.

Эта переменная model — это то, что возвращает метод model соответствующего маршрута.

Думаю, вам стоит ознакомиться с этим руководством, чтобы получить целостное представление о том, как всё работает в Discourse.

Хорошо. Я изучу руководство по плагинам и посмотрю, смогу ли я добиться дополнительного прогресса.

На данный момент у меня есть https://github.com/NCC-Gnisha/discourse-site-statistics