5
votes

I understand that that mongo is not for formatting, but how can I create a blog post and display it in paragraph form without it being one block of text?

For example, if I have an admin section where I can create blog posts and I enter this into the textarea portion...

Consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.

Consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.

Consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.

It displays as this...

Consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.

2
I'm not sure I get your question. Can you show an example of what you would like to achieve and what you're actually getting instead? - ItalyPaleAle
I'll edit the original post - tim
Hi. Are you storing the content as file or string? - Chandan

2 Answers

3
votes

That isn't a problem with MongoDB, but you found out how HTML works :)

When you submit a textarea, all newlines are simply newline characters sent to the server (\n or \r\n). They are stored in the database as is.
However, in HTML newlines are ignored and considered like spaces, when representing text (unless you wrap that in a <pre></pre> block).

The solution is to replace all \n with <br /> tags. If you're familiar with PHP, it would be using the nl2br function, which has been ported to JavaScript here: http://phpjs.org/functions/nl2br/

2
votes

This has nothing to do with MongoDB. You get text from HTML textarea element and it has "new line" (\n, \r or \r\n) characters as paragraph seperator. When you put it in HTML p elements, those new lines are interpreted as basic whitespaces. You should convert those "new line" characters into HTML br elements or put every text block into seperate p elements.

Check this npm package: https://www.npmjs.com/package/nl2br

You can easily code a better one.