如何使用 JavaScript 配置 DocPad 集合?“警告:自定义集合 XYZ 不是有效的集合实例”
How are DocPad collections configured using JavaScript? "warning: The custom collection XYZ is not a valid collection instance"
使用 JavaScript 时如何配置 DocPad 集合?
站点启动期间显示以下消息:"警告:自定义集合 myCollection 不是有效的集合实例"
配置:
var docpadConfig = {
collections: {
// The collection causing problems.
myCollection: function () {
return [];
}
},
templateData: {
site: {
url: "http://site-url.com",
oldUrls: [],
title: "Site title",
description: "Site description",
keywords: "DocPad",
styles: ["/vendor/normalize.css", "/vendor/h5bp.css", "/styles/style.css"],
scripts: ["/vendor/log.js", "/vendor/modernizr.js", "/scripts/script.js"]
},
getPreparedTitle: function () {
if (this.document.title) {
return this.document.title + " | " + this.site.title;
} else {
return this.site.title;
}
},
getPreparedDescription: function () {
return this.document.description || this.site.description;
},
getPreparedKeywords: function () {
return this.site.keywords.concat(this.document.keywords || []).join(", ");
}
}
};
module.exports = docpadConfig;
通过观看Benjamin Lupton的一些YouTube剪辑,我了解到DocPad使用Backbone.js - 我应该以某种方式导入Backbone并在配置中使用Backbone.Collection实例吗?如果是,我该怎么做?我找到了很多 Coffee 脚本示例,但我似乎无法弄清楚如何将它们应用于普通的 JavaScript。
任何冗长的 JavaScript 配置示例将不胜感激,因为我相信我迟早会想要对配置进行更多调整:)
使用以下方法使其工作:
var docpadConfig = {
collections: {
journalEntries: function () {
var documents = this.getCollection("documents");
var sortByDescendingDate = [{ date: -1 }];
// I've added "type" to the meta section of some documents.
var typeEqualsJournal = { type: { $eq: "journal" } };
var journals = documents.findAllLive(typeEqualsJournal, sortByDescendingDate);
journals.on("add", function (model) {
model.setMetaDefaults({ layout: "journal" });
});
return journals;
}
},
...
相关文章:
- 如何使jQuery插件函数可调用以供独立使用,而不在集合上操作
- Meteor-将选定窗体中的对象添加到集合中
- 主干集合重置和解析
- 使用数据上的角度更改设置集合的第一个元素的动画
- 为集合分配大量的模型弹药
- 如何使用backbone.js从集合中获取模型名称
- Lodash从集合创建集合
- 2个backbone.js集合,具有相同的模型,但排序顺序不同
- 如何合并不同集合的游标并按日期排序
- 将当前用户的 ID 推送到 meteorjs 中集合/文档的内部数组
- 使用它更新集合中的嵌套数组's索引
- 主干-从模板中迭代的集合中获取特定的模型
- 微风得到的是实体而不是对象的集合
- Meteor:插入集合后如何执行JS
- 如何使用javascript var引用Mongo DB集合's字段
- MongoDB-通过比较集合和对象的数组来返回现有字段的数组
- 如何组织用户系统的Mongo集合
- 在Meteor中插入集合时出错
- Meteor:Tracker.autorun/observerChanges&集合未按预期工作
- 如何使用 JavaScript 配置 DocPad 集合?“警告:自定义集合 XYZ 不是有效的集合实例”