Исключительное объяснение. Большое спасибо за этот ответ. Он подчеркивает то, чего я раньше не осознавал:
Исходя из этих ответов, я делаю вывод, что (как вы и говорите) взаимодействие с JSON-API во многих случаях может стать хорошим началом, что позволит избежать необходимости писать новую тему или плагин. Однако существуют типы данных, которые не раскрываются через API. Для доступа к этим типам данных и работы с ними необходимо использовать сериализатор данных Discourse, а для самой сериализации потребуется плагин.
Кажется, одним из хороших примеров данных, недоступных через API, являются владельцы группы. Я так говорю, потому что (касательно доступа к владельцам группы):
Один момент, вызывающий путаницу: в API Discourse, когда вы получаете информацию о конкретной группе, одним из возвращаемых признаков числится "is_group_owner": true, так что не совсем понятно, что это должно означать…
Но, похоже, чтобы получить владельца группы, мне нужно сериализовать признак владельца группы.
Есть ли хорошие примеры использования сериализатора Discourse? Я видел этот, но, учитывая его важность, руководство с несколькими примерами было бы чрезвычайно полезным.
Самый близкий пример, который у меня есть:
Это полезно, но не совсем верно (по крайней мере, это вызывает у меня ошибки с сообщением «неверный плагин»). Я не уверен, как его адаптировать, чтобы на странице списка групп я мог получать владельцев для каждой группы.