2013-05-25 4 views
0

내 프로젝트에서 HAML을 사용하고 있습니다. 이상적으로Rails 도우미에서 HTML을 생성하기위한 기본 제공 옵션은 무엇입니까?

def social_network(name) 
link_to(...) do 
    # generate span.text and span.twitter.icon 
end 
end 

내가 그냥 통과하고 싶지 않은 : 나는 나를 위해이 단편을 생성하는 헬퍼를 작성하려는

%a.social.twitter{:href => '...'} 
    %span.text Twitter 
    %span.twitter-icon 

: 내 프로젝트를 통해 다음과 같은 조각과 같은 구조를 사용 문자열 형태로 위장한 일부 HTML은 link_to 블록으로 표시됩니다. 나는 마크 업 빌더 나 API를 선호한다.

레일즈에는 이러한 용도로 사용할 수있는 내장 옵션이 있습니까?

+1

내 조언은 당신이 대신 도우미의 일부를 사용할 수 있는지 파악하는 것입니다 (대신 도우미에서 부분을 호출?). 헬퍼를 사용하여이 작업을 수행 할 때의 문제점은 일반적으로 로직 만 포함해야하는 무언가에 마크 업을 잠그고, 레일을 잘 모르는 프론트 엔드 사용자가 그것을 알아 차리는 대신 언젠가 알아낼 수 있다는 것입니다 바로 거기에서보기 폴더에 부분적으로. 그냥 내 2c – concept47

답변

1

레일

당신이 빌더를 사용할 수 없을 때 방법은 프로그래밍 HTML 태그를 생성하기 위해 제공 ActionView::Helpers::TagHelper에서 content_tagtag 있습니다. 예를 들어

: 당신

def social_network(name, klass) 
    link_to(...) do 
    content_tag(:span, name) 
    tag(:span, class: klass) 
    end 
end