2012-04-17 3 views
0

У меня есть приложение rails, у которого есть текстовое поле ввода для пользователей, чтобы добавить описание их работы. мне это нужно, чтобы сохранить пункты, однако это только поставляет все на одной линии ...форматирование из текстовой области в rails app

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

Это мой удивительный фильм что я работаю уже 12 лет. Это был труд любви.

Это, как она заканчивается, когда пользователь отправляет форму ...

Это мой удивительный фильм, который я работал в течение 12 лет. Это был труд любви.

Я думаю, что это соответствующая часть кода -

.field .name = f.label: Описание .value = f.text_area: описание,: строки => 5,

код находится в файле .haml.

Любая помощь была бы принята с благодарностью. Cheers

ответ

1

Во время отображения вы можете использовать уценку Redcarpet.

def markdown(content) 

    markdown =Redcarpet::Markdown.new(Redcarpet::Render::XHTML,:hard_wrap=>true,:filter_html=>true,:autolink=>true,:no_intra_emphasis=>true) 
    markdown.render(content).html_safe 

end 

и UI

уценки (@ movie.description)

+0

Спасибо за вашу помощь ... Redcarpet сделал трюк. ура –

0

Линия разрывов все еще там, только не превращали в перерывах HTML строки. Чтобы увидеть это, просмотрите источник страницы с содержимым в ней. Вы увидите, что линия там разрывается.

Эти разрывы строк должны быть преобразованы в разрывы строк html, т.е. <br>.

Чтобы исправить это, в вашем шаблоне просмотра измените свою ссылку на контент от text до text.gsub("\n","<br>\n").

9

Попробуйте simple_format:

my_text = "Here is some basic text...\n...with a line break." 

simple_format(my_text) 
Смежные вопросы