繁体   English   中英

CKEditor、MongoDB和NodeJs:文本以HTML格式显示

[英]CKEditor, MongoDB, and NodeJs: Text is displayed in HTML Format

长期潜伏者,第一次海报。

抱歉,如果我的格式不正确。 几天来一直试图解决这个问题,但我无法自己解决。

我目前正在构建我的第一个博客站点,我正在使用 CKEditor v4.14.1 来允许用户制作格式化的博客条目。 但是,用户输入在网页上显示为 HTML 而不是格式化文本。 我也在使用 MongoDB 来存储博客条目。 任何反馈将不胜感激!

这是用户输入:
用户输入

这是网页上的output:
网页上的 output

新的.ejs

<form action="/posts" method="POST" enctype="multipart/form-data">
  <div class="input-area">
    <textarea name="post[body]" id="editor" placeholder="Body"></textarea>
  </div>
  <input type="submit" id="submit">
</form>

<script>
  CKEDITOR.replace('editor')
</script>

MongoDB 后架构

const PostSchema = new Schema({
  body: String
})

PostSchema.plugin(mongoosePaginate)
module.exports = mongoose.model('Post', PostSchema);

控制器/posts.js

const Post = require('../models/post');

// Posts Create
async postCreate(req, res, next) {
  let post = new Post(req.body.post);
  post.body = req.body.post.body;
  await post.save();
}

显示.ejs

<div><%= post.body %></div>

解决了:
我的 show.ejs 应该是

<div><%- post.body %></div>

代替

<div><%= post.body %></div>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM