커스텀 필드 기준으로 주제 가져오기?

이 작업을 수행하는 방법은 다음과 같습니다.

  1. 클라이언트: api.addDiscoveryQueryParam을 사용하여 토픽 쿼리 매개변수를 추가합니다.

  2. 서버: TopicQuery 클래스(lib/topic_query 참조)에서 add_custom_filter를 사용하여 해당 매개변수로 토픽 쿼리를 필터링합니다.

add_custom_filter 콜백은 다음과 유사한 형태가 됩니다.

::TopicQuery.add_custom_filter(:field_name) do |topics, query|
  if query.options[:field_name]
    topics.where("topics.id in (
      SELECT topic_id FROM topic_custom_fields
      WHERE (name = 'field_name')
      AND value = '#{query.options[:field_name]}'
    )")
  else
    topics
  end
end