2012-12-28 25 views
8

Làm cách nào để tôi cho phép người dùng nhập văn bản nhiều dòng trong trường biểu mẫu text_area?Làm cách nào để cho phép nội dung nhiều dòng trong trường text_area đường ray?

Hiện tại bất kỳ nội dung nào được nhập vào text area ngắt dòng đều bị xóa ... Chúng được giữ lại khi tôi chỉnh sửa nội dung ... Vì vậy, có thể trong chế độ xem hiển thị rằng các ngắt được xóa?

Tôi đã tìm thấy một vài điều cho thấy rằng tôi cần triển khai trình soạn thảo WYSIWYG, nhưng tôi muốn tránh điều đó nếu có thể.

Mọi đề xuất?

UPDATE: Vì vậy, nó trông giống như đường ray tiết kiệm nội dung với ngắt dòng, và tôi có thể thêm .html_safe đến lĩnh vực này trong giao diện hiển thị (ví dụ: <%= @post.post.html_safe %>). Bây giờ nó sẽ hiển thị nội dung với html cơ bản (ví dụ: <br>, <b>, v.v ...) nhưng vẫn không thể hiện ngắt dòng trong nội dung (tức là khi tôi nhấn enter cho một dòng mới) được lưu bằng đường ray và tôi có thể xem khi tôi chỉnh sửa nội dung.

+0

Một textarea không có gì Rails cụ thể. Html là html – apneadiving

Trả lời

11

Các dấu ngắt dòng không được hiển thị bằng HTML. Bạn sẽ muốn sử dụng nội dung nào đó như simple_format hoặc wraptext trên nội dung của mình khi bạn đọc to để chuyển đổi dòng mới thành <br> hoặc <p> thẻ.

<%=simple_format(@post.post).html_safe %> 

hoặc

<%=Wraptext::Parser.new(@post.post).to_html.html_safe %> 
+0

Ok, tôi sẽ kiểm tra điều đó ... Cảm ơn Chris! –

+0

'simple_format' có': sanitize' được bật theo mặc định, vì vậy '.html_safe' là thừa. –

+0

Tuyệt vời, 'simple_format' và' html_safe' là chính xác những gì tôi đang tìm kiếm, cảm ơn Chris. – mainframer

Các vấn đề liên quan