如何在mongoDB集合中存储流星助手,以及我们如何从mongoDB集合中呈现它?
例如,我在mongo集合中有以下字段。
"templateName":"hello {{userName}} <div> Welcome to Store</div>"
在我想要的.js文件中
userName:function(){
return "Foo";
}
答案 0 :(得分:2)
创建一个新的集合来保存模板:
MyTemplates = new Mongo.Collection('MyTemplates');
将模板插入此集合中。
在要加载存储在mongodb中的模板的模板文件中,编写一个帮助程序,如下所示:
Template.YOURTEMPLATENAME.helpers({
'getMyDynamicTemplate': function () {
Template.hello = Template.fromString(MyTemplates.findOne({"templateName":"blablabla"}).templateString);
return 'hello';
}
});
将以下代码放在模板的html:
中{{> Template.dynamic template=getMyDynamicTemplate}}
填充模板
答案 1 :(得分:1)
我遇到了类似的问题,并以Servan的答案为基础进行了解决。谢谢!!!
我没有使用findOne
与我合作,因此我将其更改为find(...).fetch()
。
首先我添加了包:
meteor add numtel:template-from-string
我的助手是:
Template.YOURTEMPLATENAME.helpers({
'getMyDynamicTemplate': function () {
var MyHTML = MyTemplates.find({},{HTML:1}).fetch();
Template.hello = Template.fromString(MyHTML[0].HTML);
return 'hello';
}
});
然后将此代码放入我的模板&#; html:
{{> Template.dynamic template=getMyDynamicTemplate}}
它很漂亮!