在 Discourse 论坛上创建自定义 API 的最佳方法是什么?
例如:我想创建一个 GET 请求,返回用户数量(users.count)、主题数量(topics.count)和分类数量(categories.count)。我该如何将此 API 添加到论坛中?
在 Discourse 论坛上创建自定义 API 的最佳方法是什么?
例如:我想创建一个 GET 请求,返回用户数量(users.count)、主题数量(topics.count)和分类数量(categories.count)。我该如何将此 API 添加到论坛中?
您需要编写一个插件。请参阅 Discourse 插件创建入门指南 第一部分:创建基础插件
/admin/about.json
我想这已经包含大部分内容了。或者也许只是 /about.json。
数据并不完全相同,因此我想创建一个自定义的 JSON API。
我一直将 GitHub - discourse/discourse-subscriptions: A Discourse plugin that allows payments and subscription management via Stripe. · GitHub 作为添加模型的参考(你并不需要完整的模型,但 discourse-subscriptions/config/routes.rb at main · discourse/discourse-subscriptions · GitHub 展示了如何添加路由的示例。加上 add_to_class,这基本上就是你所需了解的全部内容了。祝你好运!
谢谢 @pfaffman
我会查看一下。
我无法通过插件创建自定义页面/API。
是否有适合初学者的指南可供参考?或者有没有展示基本步骤的文章?
我已按照 Discourse 指南操作,成功为插件添加了设置,但无法创建新页面。
@pfaffman
我是以订阅插件为参考来编写自己的插件的。插件生成器会生成一个带有新路由的插件。这比较复杂,因为你需要同时处理 Rails 和 Ember 两部分。如果你只想添加一个 Rails(API)路由,那并不难。(其他人可能会说,只添加一个 Ember 路由也很简单。)
你是需要一个新的页面在浏览器中渲染,还是只需要后端支持?