여기 설명(Understanding Discourse Trust Levels)에 따르면 인용하자면:
신뢰 수준 1의 사용자는…
모든 핵심 Discourse 기능을 사용할 수 있으며, 모든 신규 사용자 제한이 해제됩니다.
신규 사용자 제한 중 하나는(또한 인용하자면) 다음과 같습니다:
신뢰 수준 0의 사용자는 할 수 없는 것…
3개 이상의 주제(Topic)를 게시하는 것
이것은 이 함수(github 링크)에서 사용되는 max_topics_in_first_day 설정을 가리키는 것 같습니다:
# Additional rate limits on topics: per day and private messages per day
def limit_topics_per_day
return unless regular?
if user && user.new_user_posting_on_first_day?
limit_first_day_topics_per_day
else
apply_per_day_rate_limit_for("topics", :max_topics_per_day)
end
end
new_user_posting_on_first_day가 위의 블로그 페이지 설명과 정확히 일치하지 않는 것 같습니다. 그 구현은 다음과 같습니다:
def new_user_posting_on_first_day?
!staff? && trust_level < TrustLevel[2] &&
(
trust_level == TrustLevel[0] || self.first_post_created_at.nil? ||
self.first_post_created_at >= 24.hours.ago
)
end
코드에 따르면: 사용자가 TL1이고 같은 날 첫 게시물을 생성했다면, 이 함수는 true를 반환하고 max_topics_in_first_day 제한이 적용됩니다.
블로그에 따르면: 사용자가 TL1이면 모든 신규 사용자 제한이 해제됩니다. 따라서 'max_topics_in_first_day’가 적용되지 않아야 한다고 가정합니다.
제 질문:
- 이것은 코드에 있는 버그인가요?
- 이것이 의도된 동작이라면, TL1 사용자가 첫날 생성할 수 있는 주제(Topic) 수를 제어하는 전용 설정이 있나요? TL0의 경우보다 그 수치가 더 높기를 원합니다.