你好。
我希望在首页上结合另一个插件,从 /about 页面显示一些站点统计数据。
例如,我已在某个插件的 .hbs 文件中添加了 Members: {{number model.stats.user_count}},但重新构建 Discourse 后,它只显示 0。实际上我的用户数大于 0。![]()
有任何想法或提示吗?
你好。
我希望在首页上结合另一个插件,从 /about 页面显示一些站点统计数据。
例如,我已在某个插件的 .hbs 文件中添加了 Members: {{number model.stats.user_count}},但重新构建 Discourse 后,它只显示 0。实际上我的用户数大于 0。![]()
有任何想法或提示吗?
如果不了解更多关于该插件的信息,很难给出确切说法。从已有该数据的页面获取可能更简单。
基本上,我正在编写一个插件,用于在论坛底部显示版块统计数据,类似于 vBulletin 的做法。
目前,我有以下内容:
![]()
在我的插件目录中,我的 /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>
我从 Discourse GitHub 仓库中的 about.hbs 文件里获取了 {{number model.stats.topic_count}} 这段代码。
你有两种方法可以实现这一点。
只需检查 /about 页面调用了哪个(Rails)控制器来获取所需数据。
在你的 Ember 路由文件的 model 方法中,你可以通过 Ajax 调用该控制器并获取所需数据。
或者,
如果你已经编写了自己的控制器,那么可以创建一个新方法,将你找到的控制器中的逻辑复制到你的新控制器中,并在必要时(可能)过滤你需要的数据。
这个 model 变量就是相关路由的 model 方法所返回的内容。
我认为你应该阅读 这篇 指南,以全面理解 Discourse 的工作原理。
好的。我会查看那个插件指南,看看能否取得进一步的进展。
到目前为止,我已经完成了 https://github.com/NCC-Gnisha/discourse-site-statistics