- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
所以我最近一直在阅读有关 CouchDB 的文章,我真的很喜欢它。它看起来很简单,但又很灵活,我喜欢 RESTful 界面。但让我们面对现实吧——除非您正在构建一个 SAP,否则您会希望您的应用程序提供具有 SEO 友好 URL 的静态 HTML,而不是持续的 HTTP 请求。我还没有在任何项目中实际使用过 CouchDB,但我很想在不久的将来探索它。
问题是:如何使用它来构建静态 HTML 网站,例如博客?我想将我所有的博客文章存储在 CouchDB 中,然后根据类别、标签和日期将它们作为 HTML 提供。如果我理解正确,我会在我的设计文档中定义一组展示。因此,例如,在“工作”类别中所有帖子的设计文档中,我还会为显示 模板添加一个单独的功能。但是,将我的 HTML 存储在 JSON 文件中的 JavaScript 函数中时遇到了一些问题!这听起来很难维护。我快速浏览了 CouchApp,它似乎解决了这个问题,但它似乎并未在积极开发中,因此我对其他可能的解决方案有疑问。
我希望能够像往常一样构建我的 HTML/CSS/JS,但尽可能利用 CouchDB 的优势,而无需任何外部后端。或者甚至更好——我很乐意将我的数据库定义为 JSON 文件,我的 map 作为常规 .js
文件运行并维护经典目录其他一切的结构,例如:
db/data
- 这包含 CouchDB
db/maps
- 这包含我的 map 函数
public/
- 这包含其他所有内容,包括其他 JS、CSS 和 HTML,如下所示:
public/css
public/js
public/categories.html
public/posts.html
public/index.html
等等
关于如何实现此目标的任何想法?或者是否有可能?
奖励问题:有人能解释一下什么是reduce函数吗?它们是 sum
和 count
函数的 SQL 等价物吗?我什么时候真正使用 reduce 函数?我什么时候需要编写自定义的?
谢谢!
最佳答案
CouchDB 是专为 web 设计的数据库,它是开箱即用的 RESTful API,这就是为什么 CouchApps 如此简单、开发速度快,并且不需要后端,因为 CouchDB 实际上就是您的后端。
我知道维护从 CouchDB 推送的 HTML 很困难,它也很昂贵,所以我构建 CouchApps 的方式是使用 Backbone 创建一个前端应用程序,管理我所有的路由(友好的 URL),使用模板(任何模板框架,我使用简单的 requirejs !text),并像普通的 HTML/CSS/JS 一样开发应用程序,对 CouchDB View 进行 Ajax 调用(使用列表转换数据,因此只需返回干净的 JSON),如果我想要一个特定的文档,也可以这样做,只需使用 Shows,我就会再次获得 JSON 数据。
所以最后是作为一个 Web 应用程序与 RESTful API 对话并解释该数据以根据需要显示它。
然后您将该应用程序推送到 CouchDB(现在它是一个 couchapp),因此 CouchDB 实际上是将您的应用程序提供给最终用户并将 API 提供给您的应用程序。
减少:这是一个强大的算法,正如你所说的等同于 SQL sum
和 count
,你在 CouchDB 中也有那些减少(_sum
,_count
, _stats
).我建议您阅读此链接以了解减少和重新减少。
http://www.ramblingincode.com/building-a-couchdb-reduce-function/
关于rest - CouchDB - CouchApp 的任何替代品?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31632303/
我正在设计一个用于任务管理的移动应用程序(待办事项列表以及许多额外的好东西),可以离线使用并在重新连接时同步。 Couch 和 Pouch DB 给我留下了深刻的印象,但我仍然不确定数据库和角色的最佳
CouchDB 中如何实现多范围查询?对于单个范围条件, startkey 和 endkey 组合工作正常,但同样的事情不适用于多范围条件。 我的 View 函数是这样的: "function(doc
是否可以在不同的 CouchDB 数据库之间进行连接?我知道,我可以将所有数据放入同一个数据库中,但我想使用 Ubuntus DesktopCouch,它有一些默认数据库,比如我想使用的联系人和笔记。
给定以下对象结构: { key1: "...", key2: "...", data: "..." } 有没有办法通过查询 key1 和 key2 而不设置两个不同的 View (每
我从 CouchDB 开始,需要一点帮助。 我有很多数据在表中列出给用户。用户应该能够通过多个动态参数过滤该数据。 例如。假设有一个包含日期、作者、标签、is_published、标题字段的表。 用户
刚刚在 mac 山狮上使用 brew 安装了 CouchDb。一切顺利,直到我遇到以下问题启动服务器我不知道 erlnag 并且无法分析转储文件 `couchdb Apache CouchDB 1.2
在使用关系数据库工作了这么长时间后,我真的很努力地理解这个新概念...... 谁能解释我应该如何进行存储,比如类别层次结构? 在关系数据库中,我有: 类别: 类别编号 父类别 ID 姓名 或那种性质的
我希望有人可以在这里验证或更正我的结论。 我正在考虑写一个小的副项目。我想创建一个用于记笔记的桌面应用程序,该应用程序将同步到 Web 服务器,以便多个安装可以保持同步并共享数据,并且如果需要,还可以
我试图在单个 CouchDB 文档中存储多个独立附件,并为每个附件分配任意属性(即描述)。是否有这样做的约定?据我所知,我无法将它们插入 _attachments直接构造。提前致谢! 最佳答案 您不能
关闭。这个问题是opinion-based .它目前不接受答案。 想改善这个问题吗?更新问题,以便可以通过 editing this post 用事实和引文回答问题. 2年前关闭。 Improve t
这些功能是什么? 我在哪里可以阅读有关它们如何工作的信息? CouchDB 权威指南没有解释它,很奇怪。 最佳答案 来自 CouchDB 权威指南: There are other design do
我一直在阅读 Linked documents在 CouchDb 文档中,它看起来很好。 但是是否可以在数据库 A 中编写一个 View 来从数据库 B 发出文档?我需要它,因为我们在不同的数据库中存
使用 CouchDB 1.0.1。 我删除了一些文件,然后我放了一些其他的文件 _id作为删除的。 现在这些新文档有 _deleted_conflicts field : "_deleted_conf
我想实现一个 webapp - 一个集成来自各种来源的数据并将它们显示给用户的提要。用户应该只能看到他有权阅读的提要项目(例如,因为它们属于他所属的项目)。但是,许多用户可能(并且将会)看到一个提要项
我是 CouchDB 的新手并正在学习它。我没有遇到 CouchDB 对参照完整性的支持。 我们可以为 CouchDB 文档中的字段创建外键吗? 例如是否可以确保供应商数据库中提供订单文档中使用的供应
是否有任何技术/建议来强制执行独特的约束?是的,我们可以创建唯一的 key ,但我们不能更改 key 和 key ,而且这种方法不适合复杂的验证(单独的唯一登录、单独的唯一电子邮件等...) 例如,一
我有一个问题,我已经尝试回答一段时间了,但无法弄清楚: 您如何设计或划分 CouchDB 文档? 以博客文章为例。 半“关系”方法是创建一些对象: 发帖 用户 评论 标签 片段 这很有道理。但我正在尝
CouchDB 可以在同一台机器上处理数千个独立的数据库吗? 假设您有一组 BankTransaction。有数千条记录。 (编辑:实际上并不存储事务——只需考虑大量非常小的、频繁更新的记录。它基本上
我有一个 CouchDB 数据库,主要存储文档附件。 文件存储在数据库中,URL 结构如下:/db-name/numeric-file-id/official-human-readable-file-
我正在阅读 Apress 的《Beginning CouchDB》一书,其中有一行让我有点困惑: Also important to note is that CouchDB will never o
我是一名优秀的程序员,十分优秀!