2010-12-08 2 views
2

RedCloth에서 양식에 일반 텍스트를 저장하여 HTML로 변환했습니다. 예를 들어, 내 양식이를 작성하고 저장, 것 그것이 내가 쓴 똑같은 방법으로 표시 할 수 있도록 :이 코드RedCloth.to_html을 편집 가능한 바닐라 텍스트로 변환하는 방법?

This sentence 
gets inserted into it 
proper html syntax 
to preserve line breakage. 

을 :

def parse_code 
    self.text = RedCloth.new(text).to_html 
end 

을 그리고 나는 그것을 다시 표시 할 수 있습니다 이 :

= raw post.text 

하지만 그것을 편집 할 때, 그것은 그것으로 나에게 반환

<p>This sentence</p> 
<p>gets inserted into it</p> 
<p>proper html syntax</p> 
<p>to preserve line breakage</p> 

어떻게 편집 할 수 있습니까? 편집하기 전에 이동하여 저장 한 것과 같은 방식으로 보입니까?

감사합니다.

답변

3

나는 섬유에 저장되어있는 섬유 코드를 그대로두고보기 만에 HTML로 변환 할 것 :

= raw RedCloth.new(@post.text).to_html 

좋은 방법으로 생각하지 않는 섬유와 HTML 사이의 변환. parse_code 메서드는 텍스트가 HTML ..로 변환되고 Db에 저장되는 것으로 보입니다.

HTML을 섬유로 변환하려는 경우 clothred 또는 this blog을 읽으십시오.

+0

이것은 이상적인 정답이 될 것입니다. 기존 데이터가 HTML로 저장되어있는 경우 내 솔루션을 참조하십시오. –

+0

이 문제는 RedCloth html을 추가하지 않고 저장하면 솔리드 문자열로 저장되고 나중에 페이지 나누기를 추가 할 수 없다는 것입니다. 그렇습니까? 또는 나는 틀리다, 나는 확실하지 않다. .. – Trip

+0

와아 나는 그것을 얻는다! 감사합니다 fifyurgiri. RedCloth를 시작하기 전에 귀하의 답을 알고 싶습니다. 매력처럼 작동합니다. – Trip

1

: 촬영! 나는 그 질문을 오해했다!

당신은 ClothRed를 사용하여 섬유에 다시 텍스트 영역의 값을 할당 할 것 :

ClothRed.new(html).to_textile 

죄송합니다!

+0

Hey Chuck, 답변 주셔서 감사합니다. 그러나 양식에'= f.text_area : text'라고 대답 할 때 어떻게 구현합니까? – Trip

+0

내 답변이 업데이트되었습니다. 나는 네가 뭘 하려는지 오해했다. 죄송 해요! –

+0

척, 너 최고야! 고맙습니다. 나는 이것이 의미가 있도록 약간의 연구를해야합니다. 나는 지금 모든 일을 생각하고있다. 형식이 지정된 텍스트로 데이터를 저장 한 다음 편집 가능한 텍스트 영역에 태그없이 서식이 지정된 데이터를 검색합니다. "ClothRed"? 이 얼마나 창조적 인 이름 .. 하하. – Trip

0

내가 올바르게 이해했다면 HTML 출력을 데이터베이스에 저장하고있는 것입니다. 그렇게하는 대신 원시 섬유 내용을 저장 한 다음 사용자에게 보여줄 때 HTML로 변환하십시오.

+0

아하 흥미 롭 군. 화제에서 벗어나지 말고 형식화 된 파일을 어떻게 저장하면 다시 검색 할 수 있습니까? 아니면 더 나은 아직이 블로그가 있습니까? 나는 하나를 찾을 수없는 것 같습니다. 고마워요! – Trip