2011-07-17 2 views
1

블로그 게시물 항목을 나열하고 각 항목 아래에 5 개의 설명을 표시합니다.도움말이 컨트롤러 로직을 리팩터링하는 데 도움이 되셨습니까?

'show more' 

또는

'add comment' 
이의 논리는 현재 내 컨트롤러에

가 :

@posts.each do |p| 

    if p.comment_count > 3 
    p.some_label = 'show more' 
    else 
    p.some_label = 'add comment' 
    end 

end 

나는 'some_label를 추가해야했다 말한다 마지막 코멘트 아래 레이블이 있습니다 '속성을 내 게시물 모델에만 적용 할 수 있습니다.

이 모양이 맞습니까? 아니면 다시 고려해야합니까?

답변

1

이것은 내게보기 논리처럼 느껴지고 사용자에게 표시 할 링크와 같은 모델의 속성을 사용하는 것이 다소 재미있을 것 같습니다.

나는 도우미 방법을 사용하여 언급 한 경로쪽으로 더 나아갈 것을 제안합니다. 게시물 아래의 링크를 렌더링하는 시점에 이르면 해당 게시물에 대한 의견 수를 빠르게 확인할 수있는 도우미에게 전화를 걸면 찾고있는 문자열 (또는 전체 링크)을 반환 할 수 있습니다 그 상황.

게시물의 댓글 수를 결정하는 것 외에이 논리는 모델과 직접 상호 작용할 필요가 없습니다.

관련 문제