继续 Discourse Fingerprint - Browser Fingerprinting Plugin 中的讨论:
这是由于路由冲突导致的。
核心定义了
admin_plugins GET /admin/plugins/:plugin_id(.:format) admin/plugin#show {format: /(json|html|\*\/\*)/}
该插件定义了以下内容
admin_plugins_fingerprint GET /admin/plugins/fingerprint(.:format) discourse_fingerprint/fingerprint_admin#index
我们并没有获取到 fingerprint_admin#index 的结果,而是获取到了 admin/plugin#show 控制器的结果,即插件元数据。
此插件中还存在一些其他问题,例如路由格式弃用问题:
以及 plugin.rb 元数据中指向该插件旧 URL 的问题 # url: https://github.com/udan11/discourse-fingerprint.git