javascript - 您如何处理通过 AJAX 保存与尚未创建的对象相关的属性?

标签 javascript mysql ajax

我有一个尚未创建的对象(因此它没有 ID),但用户正在填写字段以创建它。对于其中一个字段,他们为此对象创建了一个属性,但该属性需要对象的 ID。

这就是问题所在——因为对象尚未实际创建(用户正在填写字段以创建它),所以它没有 ID。当您编辑对象并因此拥有对象的 ID 时,创建属性没有问题。

关系如下:

OBJECT (name, id)
  ^ ATTRIBUTE (name, object_id, id)

遇到这种情况你是怎么处理的?我正在考虑向对象添加一个“is_temporary”字段,以便它可以立即获得 ID,但肯定有更好的方法吗?

最佳答案

实际上,这是个好问题。您有两个选择:

  • 修改“属性”创建代码,以便能够通过客户端表单状态处理创建和保存。
  • 使用“is_temporary”字段,并通过定期运行的任务定期清除它们。

后者更容易实现,但需要您在访问对象的所有其他地方包含 is_temporary='false',并且还会在人们取消时弄乱您的 ID 序列。

选择取决于 ATTRIBUTE 创建代码的难度。如果很难让它在创建对象(没有 ID)之前一直保留在表单中,请选择后一个选项。否则,选择前者。

关于javascript - 您如何处理通过 AJAX 保存与尚未创建的对象相关的属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1044272/

相关文章:

javascript - 使用 jquery 加载动画以显示在特定的 div 中

javascript - 在 ROR 中加载 AJAX 后,如何使页面跳转到顶部?

javascript - 下载多个SFTP文件时NodeJS报错 "Possible EventEmitter memory leak detected. 11 error listeners added"

javascript - 将 socket.on 包装为 promise

php - 如何将数组放入MySQL?

mysql - 如何将%放入字符串中

javascript - 保存用户的黑暗模式偏好的问题

javascript - Chrome 浏览器在 Handlebars 模板中未捕获类型错误

mysql - 如何配置 Yii 框架通过 SSH 连接 MySQL?

javascript - 将 PHP 联系表单转换为 AJAX