【发布时间】:2011-12-24 00:42:06
【问题描述】:
我正在玩重客户端应用程序。
想象一下我有这个模型:
class Category(models.Model):
name = models.CharField(max_length=30)
color = models.CharField(max_length=9)
我正在使用 knockoutjs(但我想这并不重要)。我有一个包含类别的列表 (observableArray),我想创建一个新类别。
我创建了一个新对象并将其推送到列表中。到目前为止一切顺利。
将其保存在我的数据库中怎么样?因为我使用的是 sweetpie,所以我可以向 '/api/v1/category/' 发布一个 POST,然后瞧,新类别在数据库中。
好的,但是...我还没有刷新页面,所以...如果我想更新新的类别,我该怎么做?
我的意思是,当我检索类别时,我可以保存 ID,这样我就可以放入 '/api/v1/category/id' 并保存更改,但是......当我创建一个新类别时,数据库为其分配了一个 id,但我的 javascript 还不知道该 id。
换句话说,工作流程类似于:
进行获取>将现有对象(及其ID)推送到列表中>创建新类别>将其推送到列表中>保存现有类别(该类别在javacript上没有ID)>编辑类别> 如何保存更改?
那么,我的问题是,常见的路径是什么?我考虑过发送类别并以某种方式检索 id 并将其分配给我在 js 上的对象,以便以后能够修改它。问题是向服务器发送 POST 不会返回任何内容。
过去我做过类似的事情,通过 post 发送对象,保存,检索并发送回,在成功方法上检索 id 并将其分配给 js 对象。
谢谢!
【问题讨论】:
标签: django knockout.js tastypie