그룹 멤버를 내림차순으로 표시하는 직접 링크가 작동하지 않음

  • 그룹의 멤버 목록을 가져오는 백엔드 코드는 특정 필드를 기준으로 오름차순/내림차순으로 정렬하기 위해 order와 asc 매개변수를 받습니다. asc 매개변수가 존재하고 비어 있지 않으면 오름차순으로, 그렇지 않으면 내림차순으로 정렬됩니다.
  • 그룹 멤버 페이지의 프론트엔드 코드도 쿼리 매개변수를 파싱하여 백엔드에 전달할 수 있는 것으로 보입니다. 프론트엔드에서 asc의 기본값은 true입니다.

이 링크로 이동할 때: https://try.discourse.org/g/trust_level_2?order=added_at&asc=, 테이블 헤더를 수동으로 클릭하여 정렬을 전환하지 않고도 직접 링크로 TL2 멤버를 추가 시간 기준으로 내림차순으로 표시되기를 기대합니다.

그러나 실제 동작은 다음과 같습니다: TL2 멤버가 추가 시간 기준으로 오름차순으로 표시되지만, 내림차순으로 표시되어야 한다는 것을 암시하는 “chevron-down” 아이콘이 함께 표시됩니다:

DevTools의 Network 탭을 살펴보면, 페이지가 https://try.discourse.org/groups/trust_level_2/members.json?offset=0&order=added_at&asc=&filter= 대신 https://try.discourse.org/groups/trust_level_2/members.json?offset=0&order=added_at&asc=false&filter= 요청을 발행합니다.

모든 URL 매개변수가 문자열이므로, params[:asc] && params[:asc].present? 로직에 의해 asc=false는 비어 있지 않은 값으로 간주되어 오름차순 결과가 반환됩니다. 아마도 프론트엔드 코드가 URL 매개변수에서 asc의 불리언 false 값을 빈 문자열로 변환해야 하는 것 같습니다.

2개의 좋아요

확인해 주셔서 감사합니다. 여기서 변경된 사항으로 인해 이제 asc=false가 작동합니다.

2개의 좋아요

와, 정말 멋지네요… 최고예요! 감사합니다!

2개의 좋아요