2013-06-21 2 views

답변

8
data-text = "I won #{@credits} by playing..." 

당신과 같이, 다른 문자열에 대해 동일한 원칙을 적용 할 수 있습니다

data-url = "#{request.scheme}//#{request.port}" 
+0

그냥 메모'데이터 url'가 유효한 변수 이름이 아닙니다 :

는 데이터를 처리하는 속성 때 그들이 얼마나 청소를 참조하십시오. 무엇이든 할당하려고 할 때,'undefined 지역 변수 또는 main 메소드의 데이터 : Object' – andy

+0

@andy를 얻을 수 있습니다.'html' 환경에 있지 않으면'data-url' 유효합니다. –

+0

나는 erb이므로'data-url = "<% = request.scheme %> // <% = request.port %>"라고 생각한다. –

5

을 당신이 ERB 파일이 때, "<% %> 태그 내부의 루비와 상호 작용 . 바깥쪽에는 루비가 무시합니다.

<html> 
    <tag data-text = "I won <%= @credits %> by playing..." 
     data-url = "<%= request.scheme %>//<%= request.port %>"></tag> 
</html> 

그 변수에 대한 당신의 가치에 따라 생산됩니다

<html> 
    <tag data-text = "I won 42 by playing..." 
     data-url = "example//3000"></tag> 
</html> 
1

을 나는 그 전에 사용했기 때문에 찰스의 솔루션이 작동 알고, 루이스 '솔루션뿐만 아니라 나 자신이 사용하지 않은 있지만 작동 할 수 전에 그 스타일.

그러나 추한 하드 코딩 된 HTML 코드 대신 훨씬 깨끗한 솔루션이 있습니다. 태그 도우미 및 링크 도우미입니다.

link_to "homepage", root_path, data: { text: "I won #{@credit}" } 

content_tag "div", data: {url: "#{request.scheme}//#{request.port}"}