Spine.js AJAX从服务器获取记录

时间:2013-04-03 06:51:47

标签: coffeescript spine.js

我有简单的app显示recrods列表,用户也可以通过id编辑barticular记录。 因为列表很大,所以我不会将其整体取出,而是部分通过Product.fetch(data: $.param(page: 1))

然后,当有人尝试编辑记录时,我会调用Product.find(id),如果recrord已经预取了fetch,那么它工作正常,但是当记录尚未提取时,我得到的错误如下:{{1 }}

所以,问题是为什么"Product" model could not find a record for the ID "1152"没有执行ajax调用以及如何使它执行它或者可能存在另一种解决方案?

1 个答案:

答案 0 :(得分:1)

Spine.find仅查看已加载的记录。执行ajax请求不是find的功能。所以你必须尝试捕捉你的发现,当它发出这个错误时,你必须抓取它。

id = 1152

try
  product = Product.find id
catch err
  Product.fetch(
    data:
     id: id
    processData: true
  )
  # Try again after Product.refresh

老实说,我认为这是一种愚蠢的方法,但它是脊柱的工作方式......我宁愿让它自动获取,或者至少不会在查找中引发错误。