- 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/
具体来说,我发现“evently”是开始使用 Couchapp 的一个障碍。我真的很喜欢 CouchDB 提供的应用程序的想法,但我想开始而不必弄清楚“事件”(这看起来很有趣,就像我想要调查的东西,但
我有一个问题:我已经安装了 couchapp,但它运行得不太好。我尝试重复此处所示:http://vimeo.com/26147136但是: master@master:~/WebDev/superb
我正在构建一个独立的 couchdb 应用程序。这些被称为 couchapps。这个想法是数据库本身在端口 80 上提供服务并返回 HTML 并作为实际网站工作。这是一个非常强大的想法,我对将代码保存
在 Cloudant 上运行完整的 couchapp 会非常优雅,但似乎无法创建公共(public)登录页面,而数据库的其余部分需要身份验证。 我可以在不打开整个数据库的情况下提供公共(public)
我已将此问题的变体发布到 CouchDB 用户列表,但尚未收到回复。 我很好奇是否有其他人构建了一个所谓的“CouchApp”;直接托管在 CouchDB 中的纯 HTML/JavaScript 应用
我的同事做了 couchapp push 到我本地的 couchdb,我现在可以通过本地主机访问 index.html 但是,现在我想将 couchapp 拉到我的本地文件系统,这样我就可以进行编辑,
完成 couchapp tutoria 之后l,必须完成最后一步:保存创建的披萨。 为此,我创建了一个 JS 函数“saveToppings”,该函数被执行(如 Firebug 控制台所示)但无法保存
我使用 CouchDB 作为事件日志,我想在它之上构建简单的 UI,以便我可以更轻松地查询事件。 我可以使用原始 HTTP 调用并手动构建 View ,也可以使用 CouchApp 框架。 问题是这些
我遇到了一些麻烦,因为我找不到资源和/或教程,让我有足够的知识来正确地做到这一点: 我正在建立一个基于联系人数据库的 Couchapp。为此,我需要在登录页面上有一个无序列表的联系人(只有姓名)。在检
我想写一个非常简单的应用程序,女巫监控一些网站的状态。我还想在不使用除 CouchDB 之外的任何环境的情况下以 Couchapp 风格制作它。 所以问题是我怎样才能让 CouchApp 使用自己的时
我应该把 validation function 放在 CouchApp 文件夹结构中的哪个位置它将被 couchapp push 命令正确推送? 最佳答案 查看 CouchApp documenta
我正在学习 couchapp,它看起来很容易查询数据库项目。 但是我有带有附件的项目,我想添加附件的超链接: {{description}} 我可以正确设置id、attachment和descrip
在 couchDB 指南中,Managing Design Documents , 他们说 The _attachments directory contains files that are sav
我是 CouchDB 的新手,但我尝试用 Google 搜索却一无所获。 我有一个 View ,当从数据库查看时,它有一个包含 2 个文档的结果集主机:5984/_utils/database.htm
我知道,有 couchdb-lucene,但我托管在令人惊叹的 IrisCouch 上,我无法真正安装插件。还有其他选择吗?哪种设置是最简单和最透明的,并且可以让我继续使用 CouchDB 的强大功能
所以我最近一直在阅读有关 CouchDB 的文章,我真的很喜欢它。它看起来很简单,但又很灵活,我喜欢 RESTful 界面。但让我们面对现实吧——除非您正在构建一个 SAP,否则您会希望您的应用程序提
有没有办法在一个 CouchDB 中列出所有 CouchApps? 我想做类似的事情: couchapp list http://domain.tld:5984/content 并获取所有 couch
背景调查: User Signup in Couchapp/CouchDB through jquery.couch.js or Otherwise http://blog.couchbase.com
嗨,我读到了两种为 couchapps 实现按文档读取访问的方法: 每个用户都有自己的数据库,其中只包含该用户可以读取的数据。然后所有用户写入主数据库,该数据库使用复制过滤器复制到所有用户数据库,该过
我正在使用 couchdb 1.2.x,我正在尝试使用 underscorejs 在一个列表中,没有成功。 这是我如何进行: function(head, req) { var _ = requi
我是一名优秀的程序员,十分优秀!