2013-11-15 2 views
1

나는 레일을 위해 다음과 같은 보석 (CKEditor)을 가지고 있습니다. 그것은 잘 작동하지만 내가 가진 문제는 내가 레일 단어 개수를 수행하려고 해요 그리고 CKeditor가 이상한 문자열을 저장하고 있기 때문에 이것은 작동하지 않습니다.CKEditor 원시 텍스트 레일

HTML이 저장되지 않지만 원본 텍스트가 저장되도록 스 니펫을 만들 때 원시 명령을 사용하는 방법이 있는지 알고 있습니까?

코드를 붙여 넣기를 원한다면 알려주세요. 그러나 내용이 아래에 저장되어 있는지 확인할 수 있습니다.

[6] pry(main)> s.content 
=> "<p>YACHT!</p>\r\n" 
[7] pry(main)> 

또는 HTML을 포함하지 않는 정규식을 업데이트하십시오.

백작은 다음과 같습니다 :

def size_limit 
    book_limit = self.book.size.to_i 
    word_count = self.content.scan(/\w+/).size.to_i 
    current_snippets_size = (self.book.get_word_count || 0) + word_count 
    errors.add(:base, "Content size is too big") unless word_count < BOOK_SIZE[book_limit]['per'] && current_snippets_size < BOOK_SIZE[book_limit]['total']  
    end 

본인은 위생적으로 보석을 사용하여 시도하지만 작동하지 않았다. 나는 또한 모델에서 아래에 제안 된 Nithin처럼 그것을 시도했다.

word_count = self.content.gsub(/<.*?>/, "").scan(/\w+/).size.to_i 

그러나 작동하지 않는 것 같습니다. 나는 책이나 스 니펫 당 단어의 총 수를 정의하므로이 부분이 매우 중요하지만 여기서 약간 잃어 버리고 앱의 다른 부분으로 이동했습니다.

답변

2

사용 s.content.gsub(/<.*?>/, "")

또는

당신은 Sanitize

이이 link

+0

나는 WORD_COUNT의 모델이 사용할 수 있을까 참조 모델에서 사용할 수 있습니다. 예 : Sanitize.clean (word_count) –

+0

나는 시도하지 않았지만 반드시해야합니다. – Nithin

+0

nope가 모델에서 작동하지 않는다면, 나는 그 객체에 대해서만 작동하도록 어떻게 할 수 있을지 궁금하다 .... –

관련 문제