2014-01-22 1 views
0

일부 Rails 모델을 뷰로 전달하여 렌더링하려고합니다.모델에 저장된 동적 렌더링 HTML

보기

$('.story-text').html("#{raw @stories[0].story_text}"); 

에서 컨트롤러

@stories = Story.all 

에서

그러나 HTML 문자열 "'이 포함되어 있습니다. 따라서 HTML은 전체적으로 문자열에 포함되지 않고 Javascript가 실행되지 않습니다.

그것은

$('.story-text').html("<img src="/example.jpg" />"); 

이됩니다. 오류가 발생합니다.

어떻게하면됩니까? 파이썬에서 자바 스크립트에서 사용할 수있는 삼중 따옴표가 있나요?

편집@stories[0].story_text

<p>This is some example text</p><img src="/example.jpg" /> 

의 그것은 당신이 raw보다 오히려 HTMLEntities

+0

Story.all가 채워집니다 방법을 보여 컨트롤러 코드를 게시하시기 바랍니다. –

+0

'@stories [0] .story_text'의 예를 게시하십시오. – emaillenin

+0

Story.all은 CKEditor를 사용하여 양식을 통해 채워집니다. 컨트롤러는 말 그대로'@stories = Story.all'만을 사용하고 있습니다. 예제를 추가했습니다 –

답변

1

를 찾고 있습니다

+0

완벽한, 감사합니다! –

0

text 형식으로 데이터베이스에 저장됩니다, 당신의 문자열을 탈출 escape_javascript를 사용 자바 스크립트에 포함시키기에 적합합니다. 당신의 HAML보기에 j 별칭, 그래서이있다 :이 자바 스크립트

$('.story-text').html("#{j @stories[0].story_text}"); 

결과가 생성되는 :

$('.story-text').html("<p>This is some example text<\/p><img src=\"/example.jpg\" />"); 
+0

이것이 어떻게 작동하는지 잘 모르겠습니다. 내 컨트롤러에서 HTML을 인 코드/이스케이프하고 내보기에서 자바 스크립트로 디코딩하겠습니까? 디코딩 할 때 따옴표와 동일한 문제가 발생하지 않습니까? 내 문제와 관련된 예제를 추가 할 수 있습니까? –

+0

왜 자바 스크립트로 출력하고 있습니까? 보기 스크립트에 있어야합니다. – emaillenin

+0

보기 스크립트로 HTML을 동적으로 삽입 할 수 있습니까? 링크를 클릭하고 요소에 HTML을 삽입하고 싶습니다. –

관련 문제