【问题标题】:Couchapp directory structure, updates?Couchapp 目录结构,更新?
【发布时间】:2011-04-12 00:29:30
【问题描述】:

当生成一个新的 couchapp 时,我得到了这个结构:

appname
├── _attachments
│   └── style
├── evently
│   ├── items
│   │   └── _changes
│   └── profile
│       └── profileReady
│           └── selectors
│               └── form
├── lists
├── shows
├── updates
├── vendor
│   └── couchapp
│       ├── _attachments
│       ├── evently
│       │   ├── account
│       │   │   ├── adminParty
│       │   │   ├── loggedIn
│       │   │   ├── loggedOut
│       │   │   ├── loginForm
│       │   │   │   └── selectors
│       │   │   │       └── form
│       │   │   └── signupForm
│       │   │       └── selectors
│       │   │           └── form
│       │   └── profile
│       │       ├── loggedOut
│       │       ├── noProfile
│       │       │   └── selectors
│       │       │       └── form
│       │       └── profileReady
│       └── lib
└── views
    └── recent-items

现在,由于这个结构是为了反映 CouchDB _design 文档的 JSON 结构,所以我想通了:

  • [_attachments] 附件以二进制形式存储。 JavaScript、CSS 和 HTML 文件存储在这里。

  • [事件] ???

  • [lists] 列表是 JavaScript 函数,被执行以从视图结果中呈现 HTML 或 AtomFeed。

  • [显示] 显示函数类似于列表函数,但通过将文档转换为其他格式(如 html、xml、csv、png)来呈现内容。

  • [更新] ???

  • [供应商]外部库的主页。

  • [views]View 包含稍后可以通过 HTTP API 查询的 MapReduce 函数(请参阅 \ref{couchdb:views})。

Appart 希望我填写的描述没有完全错误,我将如何描述更新目录?这是托管验证功能吗?

第二个问题是如何描述 evently 目录...

如果有这个已经存在的摘要,请指出它!

亲切的问候!

【问题讨论】:

  • 好吧,现在,在更新了 CouchApp 之后(是的,我应该在 :/ 之前完成它),结构看起来像这样: '├── _attachments ├── 列表 ├── 显示 ├─ ─ 更新└── 意见'

标签: couchdb couchapp


【解决方案1】:

generate 命令构建 CouchDB 需要的主干文档格式;它还构建了一个 Web 应用程序开发框架 Evently。我不太了解Evently;但基本上它为开发人员提供了工具和建议,以使 UI 和沙发交互。

就我个人而言,我从不使用couchapp generate 命令。我只是从头开始创建_id 文件 (echo -n _design/whatever > _id),然后根据需要创建文件夹和文件。

列表函数(每个文件一个)接收_view 输出以产生任何 HTTP 响应(例如 XML RSS)。

显示函数(每个文件一个)接收一个文档以生成任何 HTTP 响应。

更新函数(每个文件一个)接收一个 HTTP 查询 并输出一个准备好的文档以存储在沙发上。 (例如,接收表单提交并构建 JSON 文档。)

视图函数(一个map.js 和一个reduce.js 在一个文件夹中)是CouchDB 视图并提供查询和其他功能。

我不确定updatesvendor。它们与 CouchDB 服务器无关。

【讨论】:

  • 哇,我从没想过它可以如此轻松地开始,感谢 _id 提示。总是挠头,从 couchapp init 尖叫着跑了
  • 我真的不认为这是最好的答案。查看以下内容:stackoverflow.com/questions/5629075/…
【解决方案2】:

我已经使用 couchapp 大约一两个星期了。我花了很长时间才掌握了 couchDB 的工作原理以及 couchapp 的适用性。事实上,我遇到了你所遇到的问题,而且我现在确信每个 couchapp 的新手都会有这些问题在他们的脑海中挥之不去。至少为了节省他们的时间,我发布了一些链接,这些链接有助于更好地回答您提出的问题。链接如下:

希望他们有所帮助。

【讨论】:

    【解决方案3】:

    更新函数are documented in the CouchDB wiki。引用它:

    [...] 您应该将 _update 处理程序视为 _show 函数的补充,而不是 validate_doc_update 函数。

    事件is documented on CouchApp site。文档薄弱,我在一个项目中使用它,我发现只有a short blog post 有有用的信息。幸运的是the source code 很容易理解。但是请查看Pages 应用程序以获取示例用法。无论如何,我不清楚how much used is it

    【讨论】:

      猜你喜欢
      • 2016-05-02
      • 1970-01-01
      • 2013-12-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-19
      • 2010-11-26
      • 2011-08-16
      相关资源
      最近更新 更多