1

伙计们,

我有两个模型,NotebookNote。笔记属于一个笔记本,笔记本有很多笔记。

在我的应用程序中,我有一个非常常见的 3 列视图,第一列列出笔记本,第二列列出与所选笔记本对应的笔记,第三列包含当前选定笔记的形式。

在此处输入图像描述

在 Spine 中,我没有使用关系模块。每次用户选择笔记本时,我都会调用get /notebooks/:id/notes来获取所选笔记本对应的笔记并渲染笔记列表,当用户点击创建新笔记时,我将创建一个笔记模型的 Spine 对象与当前选定的 notebook_id 和打电话save()。它适用于现有的笔记本电脑。

但是当用户创建新笔记本时会出现问题。如果用户单击以在此新笔记本中创建新笔记,则在笔记本创建 ajax 完成之前,我没有数据库中的实际笔记本 ID。所以我想我必须等待notebook createajax回调,在此之前我会阻止用户点击创建一个新的笔记。

但从 Spine 文档中,Alex 说:Waiting for a server response goes against the whole concept of an asynchronous user interface.

那么,这样做的正确方法是什么?我做对了吗?

非常感谢。

4

1 回答 1

0

在某些情况下,不等待服务器响应要复杂得多。非阻塞 UI 何时值得额外的开发工作和代码复杂性由您决定。在这种情况下,当笔记本上的 id 更新时触发更新笔记上的参考 id 应该不是很困难,但是听起来您不希望在此之前尝试持久化笔记。不过,这在没有阻塞 UI 的情况下是可行的。

于 2013-01-29T17:47:50.900 回答