gpt4 book ai didi

ruby-on-rails - rails : GoogleDocs-Style Autosave

转载 作者:行者123 更新时间:2023-12-04 15:37:29 24 4
gpt4 key购买 nike

我正在尝试构建一个 Rails 应用程序,您可以在其中从页面上的多个不同位置编辑相同的模型。我希望每 X 秒自动保存一次更改,并可以选择手动触发保存。

我想出了一个解决方案,但它看起来很复杂,而且我假设其他 Rails 用户已经遇到过类似的问题。

我想出的解决方案是在我的页面上有一个隐藏表单,它是实际提交的表单,然后在页面周围散布多个“虚拟”表单来更新隐藏表单。

提交后,隐藏表单会更新模型,并且模型包含用于确定应返回哪些 RJS 文件作为响应的逻辑。这些被捆绑并作为更新响应发送。

一些限制:

  • 无法将整个页面包装在一个表单标签中(页面上有多个模型/ Controller )
  • 可以从多个位置编辑同一字段

  • 有人有更有效的方法吗?

    最佳答案

  • 在页面中创建尽可能多的表单,即使是相同模型的相同实例
  • 触发更新将是 javascript setInterval 调用或表单字段上的 onblur。
  • 您的 Controller 应该是 REST Controller ,它将在 json 变量和 HTTP 状态 (200, 422)
  • 中返回成功或错误消息。
  • 忘记 rjs,想想客户端。您页面中的每个表单都会将表单提交给您的 Controller 的更新方法。提交表单的 javascript 将有一个错误或成功回调,然后将显示成功或错误消息。这个想法是发送表单的javascript“知道”它当前正在提交哪个表单,并且它应该能够根据它正在提交的表单显示错误或成功,这不是 Controller 的工作。
  • 保存整个页面只是序列化所有表单中的所有字段并将其发送到更新方法。 (见 serialize)
  • 关于ruby-on-rails - rails : GoogleDocs-Style Autosave,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3649648/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com