具体来说,我发现“最终”成为Couchapp入门的一个障碍。我真的很喜欢CouchDB提供的应用程序的想法,但我想开始而不必弄清楚“事件”(这看起来非常有趣,就像我想调查的东西,但现在不是)。我只想使用我现有的javascript技能和我的新CouchDB知识来制作一个简单的CouchDB应用程序。是否有比CouchApp更简单的CouchApp?或者我可以让它更简单吗?或者我应该只是喝kool-aid并学习“偶然”的东西?
感谢大家的回答 - 这就是我的想法:
您可以轻松使用CouchApp的核心功能,而无需喝任何人的Kool-Aid。具体来说,从CouchDB提供应用程序绝对不需要“evently”。 CouchApp的核心优点就是“推送”功能,它可以从文件和文件夹构建您的“设计文档” - 其余部分似乎都是您不必使用的整个JavaScript框架。
一旦你克服了如何从CouchDB实际提供页面和javascript的障碍,你可以按照自己喜欢的方式构建你的应用程序。它只需要简单的AJAX来获取文档和保存文档,因此可能性无穷无尽!
答案 0 :(得分:10)
如果您正在寻找替代方案,可以尝试Kanso。网站上有一个tutorial。
Kanso还可以解决Dominic Barnes关于使用单页应用程序进行AJAX调用的问题。相反,您可以在可能的情况下将视图呈现在客户端(使其快速),但如果需要也可以呈现核心内容服务器端,因此搜索引擎和没有javascript的用户仍然可以获得它:)
答案 1 :(得分:4)
说实话,我也从未喜欢过Evently。但是,我之前也放弃了CouchApps,因为它基本上要求你在整个应用程序中使用AJAX,从可用性的角度来看这并不好。
在任何情况下,如果您仍想使用CouchApps,我建议您使用Backbone.JS而不是Evently。 (甚至还有用于骨干网的第三方CouchDB connector版本)
答案 2 :(得分:3)
您可以使用_attachments
文件夹作为应用程序的文档根目录。例如,如果_id
的内容为_design/testapp
且.couchapprc
为:
{
"env": {
"default": {
"db": "http://USERNAME:PASSWORD@localhost:5984/testdb"
}
}
}
然后文件_attachments/index.html
位于http://localhost:5984/testdb/_design/testapp/index.html。
然后,您可以使用jQuery构建您的应用程序,并使用getJSON进行查询。或者您可以使用从vendor/couchapp/_attachments/loader.js
加载的包含的包装器。
答案 3 :(得分:1)
[很久以后]
在过去的几年里,我测试过许多不同的“couchapp”工具。这些工具都只是花哨的JSON构建器,它们将编写的Javascript和附件拼凑到CouchDB文档中并将它们推送到数据库。
即使您没有编写严格的CouchApps(虽然它们仍然可行,但炒作也已经消失了),您仍然需要一个工具来编写CouchDB设计文档。
今天,许多这些工具已经死亡 - 特别是Kanso,它试图做很多事情 - 而且我们只剩下Python Couchapp,CouchDB Bootstrap,Erica和{ {3}}
管理设计文档仍然很复杂,但现在Ddoc Lab是我的首选解决方案,因为它在浏览器中运行,有许多有趣的功能(如包括和预处理资源)并使用PouchDB - 可能链接到CouchDB以存储您的项目。
答案 4 :(得分:0)
我有一个名为caster.py的简单couchapp替代品。它支持push,pull和生成设计文档的规范目录结构。此外,它还为map / reduce函数创建了测试用例的运行样本,这些函数可以挂钩到dev进程中。这是一个没有多余装饰的单个干净的python文件。
https://github.com/vivekpathak/casters/releases/latest
它不仅是用于管理couchdb设计文档中的代码的完整包 - 它允许使用专业编程工具,如调试器,分析器,版本控制等。