2013-06-05 3 views
5

У меня есть приложение, и администратор может создать статью, и я использую редактор меток markitup для добавления заголовка и т. Д. Теперь, на мой взгляд, я хочу преобразовать этот текст уценки в html.Преобразование HTML в markdown

Итак, на мой взгляд, если на примере, когда администратор пишет статью, он пишет пример, в виде текста выделены жирным шрифтом.

Надеюсь, вы понимаете, и вы можете мне помочь.

установить redcarpet и я положил в помощнике моего приложения этого:

module ApplicationHelper 


def markdown(text) 
if text 
    markdown = Redcarpet::Markdown.new(
    Redcarpet::Render::HTML.new 
) 
    markdown.render(text).html_safe 
end 

конца

и в моем шоу зрения это:

<%= markdown(@article.content) %> 

я перезагрузил свой сервер, но у меня есть один ошибка:

неинициализированная константа ApplicationHelper :: Redcarpet EDIT 2:

СПАСИБО Все работает !!! !!!!!

+0

добавить 'требует«redcarpet'' перед тем 'модуля ApplicationHelper' –

+0

, когда я добавить требую„redcarpet“У меня есть эта ошибка сейчас Отсутствующим помощник файл хелперы/redcarpet.rb –

ответ

11

кажется вам нужен этот камень

преобразование существующего HTML в уценку в простой wa y, например, если вы хотите импортировать существующие теги в свое приложение, основанное на уценке.

Простой HTML для уценки рубинового самоцвета Мы любим уценки, потому что это является дружественным для редактирования. Поэтому мы хотим, чтобы все было уценки


неинициализированным постоянная ApplicationHelper :: Redcarpet

Добавить require 'redcarpet' перед тем module ApplicationHelper

require 'redcarpet' 
module ApplicationHelper 


    def markdown(text) 
    Redcarpet.new(text).html_safe 
    end 
end 
1

Вы можете использовать драгоценный камень redcarpet для компиляции уценки в html в рельсах.


С redcarpet вы можете чем сделать следующее:

# application_helper.rb 
module ApplicationHelper 

    def markdown(text) 
    if text 
     markdown = Redcarpet::Markdown.new(
     Redcarpet::Render::HTML.new 
    ) 
     markdown.render(text).html_safe 
    end 
    end 
end 

# some_view.html.erb 
<%= markdown(@article.body) %> 
+0

Я использую redcarpet и у меня есть неинициализированные постоянная ошибка ActionView :: CompiledTemplates :: Redcarpet, но я следую за railscasts. –

+0

перезагрузили ли вы сервер? – Daniel

+0

Да, я перезапускаю свой сервер. –

6

kramdown камень обеспечивает HTML для решения Markdown в чистом рубине.

irb> html = 'How to convert <b>HTML</b> to <i>Markdown</i> on <a href="http://stackoverflow.com">Stack Overflow</a>.' 
=> "How to convert <b>HTML</b> to <i>Markdown</i> on <a href=\"http://stackoverflow.com\">Stack Overflow</a>." 
irb> document = Kramdown::Document.new(html, :html_to_native => true) 
=> <KD:Document: ... > 
irb> document.to_kramdown 
=> "How to convert **HTML** to *Markdown* on [Stack Overflow][1].\n\n\n\n[1]: http://stackoverflow.com\n" 
Смежные вопросы