Skip to content

event_comment_countの見直し(可読性・軽微な不具合) #9860

@yokomaru

Description

@yokomaru

概要

マイページのイベント一覧のコメント表示に不整合がある

1. 表示内容と実態が一致していない

  • 現在、コメント表示が コメント(X名) となっている
  • 実際にはコメント「件数」を表示している(event.comments.length
    • 同一ユーザーが3件コメントした場合、表示は「コメント(3名)」となるが、実際のユーザー数は1名

2. styledパラメータの責務が不明瞭

  • styledによって表示を分岐しているが、「リンク表示かテキスト表示か」を制御している意図が名前から読み取りづらい
  • else側のみ「コメント(X名)」という異なる表現になっており、分岐の意図が分かりづらい
    • そもそもこの分岐が必要かも含めて整理した方が良さそう

def event_comment_count(event, styled: true)
length = event.comments.length
if styled
link_to '#comments', class: "a-meta #{'is-disabled' if length.zero?}" do
'コメント('.html_safe +
content_tag(:span, length, class: length.zero? ? 'is-muted' : 'is-emphasized') +
')'.html_safe
end
else
"コメント(#{length}名)"
end
end

再現手順

  1. イベントに参加する
  2. そのイベントに何件かコメントする
  3. users/:user_id/eventsにアクセス
  4. イベント一覧の情報にコメント(X名)にコメントした数が表示されていることを確認

期待される振る舞い

  • 仕様を整理した上で修正
    • コメント数を取得したい場合は名ではなく件にした方が分かりやすい
    • ユーザー数を取得したい場合はロジック見直し
  • styledの命名や必要性を見直す

スクリーンショット

  • 同じ人が3件コメントする
Image
  • 一覧ではコメント(3名)となっているが実態はコメントしているのは1名のみ

Image

関連Issue

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions