EJS-从数据库渲染部分

时间:2018-06-24 10:26:09

标签: node.js database pdf ejs

我正在使用Express,Express-PDF和ejs作为视图引擎来开发一个nodejs网站。

我有一个管理页面,您可以在其中使用SummerNote编辑somes模板。 它使用KnexJS来存储数据库,并使用VueJS来存储一些前端内容(例如用于访问编辑器的模板列表),从存储在db中的模板中解码以获取HTML(数据库中没有html char)

我遇到问题的地方在另一页上。它必须呈现模板以将其发送到express-pdf。 我也从数据库获得正确的文本,也从解码获得。 (感谢console.log!) 我正在尝试使用模块中的ejs,而不是这种情况下的视图引擎。

const ejs = require('ejs');
var root = path.join(path.dirname(__dirname),'views');
ret = ejs.render(content, data, {root});
res.pdfFromHTML({ filename: "hello.pdf", htmlContent: ret});

在这种情况下,正确设置了root并定位了 $(PROJECT)/ views 我的模板是:

<p><% include pdf/heading %></p>
<p><br></p>
<p>Et ceci est un test Hello World<br>Chameau</p>

和views目录如下:

/views
  /components/
  /pdf/
    heading.ejs

我在我的老朋友Google上找到了一些东西,但是所有关于使用EJS作为视图引擎。我已经使用ejs作为视图引擎。就我而言,我想渲染模板(包括一些模板)并将其保存在var中,以将其发送到pdf-express。我在EJS回购文档中找到了“ root”选项的用法(网站上对此一无所知)。 希望有人有主意! 谢谢!

0 个答案:

没有答案