Конфликт маршрутов в плагине fingerprint

Продолжая обсуждение из 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

2 лайка

Ричард Ричард — вот это мужик, если он не справится, то никто не сможет! Ура! Так больше никаких раздражающих ошибок?

1 лайк

PR здесь: Resolve route conflict and small fixes - Pull Request #95 - discourse/discourse-fingerprint - GitHub