0
내 모델은 Ticket, Staff, Post입니다.레일 시도 방법
티켓은 직원 belongs_to
직원 has_many 게시물
티켓과 관련된 모든 게시물을 렌더링하고 싶습니다.
관련 게시물이없는 경우 "No posts available"메시지가 표시됩니다.
if @ticket.staff and @ticket.staff.posts
render @ticket.staff.posts
else
There are no answers available
그러나 좀 더 깔끔하게에게 뭔가를하고 싶습니다
내 버전은 매우 상세하다. 그것은 나에게 오류 '전무'를 제공
= render(@ticket.staff.try(:post).any?) || "There are no answers available"
는 ActiveModel 호환 개체가 아닙니다. to_partial_path를 구현해야합니다.
아이디어가 있으십니까? 티켓 모델에서
당신은 내 버전보다 더 자세한 생각하지 않아? –
글쎄, 난간에 가독성에 관한 것입니다. 때로 가독성은 그다지 장황하지는 않지만이 경우 Demeter의 법칙을 준수하고 뷰 요소 만보기, 컨트롤러의 컨트롤러 요소 등을 의미합니다. 결국 코드에서 볼 때보기가 더 간단합니다. 그리고 다른 곳에서 ticket.posts를 사용하게 될 것이므로 나중에 전체 프로젝트의 정보를 간결하게 만듭니다. – sonnyhe2002