2013-01-13 4 views
0

사용자가 주문을 저장했는지 여부에 따라보기의 배경을 변경하려고합니다. 따라서 메뉴 항목은 사용자가 이미 주문을 저장하고 강조 표시하지 않을 때 강조 표시됩니다.주문 상태에 따라 레일에서 배경색을 조건부로 변경합니다.

한 가지 해결책은 두 개의 부분을 만들고 사용자 동작을 기준으로 각 조건별로 렌더링하는 것입니다.

하지만 일반적으로 전체 부분 및 나쁜 형식을 다시 렌더링하는 것은 과도한 것처럼 보입니다. 배경색을 변경하는 가장 좋은 방법은 무엇입니까?

답변

1

를 살펴 보자. 저장이 성공하면 .highlight 클래스를 메뉴 항목에 넣고 .highlight 클래스의 CSS에서 원하는 것을 수행하십시오.

+1

나는 너를 의미하는 것에 대한 세부 사항을 알아 냈다. 아주 직설적이고 매끄럽다. 고맙습니다! – Laurent

+0

좋아요! 미안해, 방망이에서 분명하지 않다면. – 99miles

+0

그것은 - 단지 새로운 것이므로 처리하는 연습이 필요합니다. 고맙습니다. – Laurent

0

컨트롤러에 if를 사용하고 if 분기에 따라 레이아웃을 변경하려면 render :layout => 'special_layout' 을 사용하십시오.

당신은이 두 가지 레이아웃이 필요하지 않습니다 This

관련 문제