클릭했을 때 헤더의 색상이 다르게 표시되도록 메뉴의 서식을 지정하고 있습니다. 각보기에 대해 동일한 haml 템플릿을 사용하고 컨트롤러가 특정 html 요소의 클래스를 변경하기를 원합니다. 컨트롤러에서 특정 html 요소를 어떻게 타겟팅하고 클래스를 추가합니까?레일 : 컨트롤러에서 요소의 클래스를 변경하십시오.
HAML :
여기에 샘플입니다
%tr
%th
%a#name-header= link_to "Name", people_path({:sort => 'by_name'})
%th Date
%th Description
%th More Info
감사관 :
def index
case params[:sort]
when "by_name"
@people = Person.find(:all, :order => "name")
#How can I change the class of the th element here
else
@people = Person.all
end
end
감사합니다!
그래서 내 HAML가 액세스 할 수 있습니다 params 해쉬에게? 또한, 부분은 무엇입니까? – Nathan
예, params에 대한 액세스 권한이 있습니다. 나 또한 실수로 도우미 대신 부분적으로 썼다. 부분은보기를 정리하는 데 사용할 수있는 부분 템플릿입니다. 헬퍼는 app/helpers 디렉토리에 있으며 뷰를 정리하는 데 도움이되는 메소드를 그 안에 넣을 수 있습니다. – James