Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails 3-通过uploadify on new/create操作将图像作为嵌套对象上载_Ruby On Rails_Paperclip_Uploadify - Fatal编程技术网

Ruby on rails Rails 3-通过uploadify on new/create操作将图像作为嵌套对象上载

Ruby on rails Rails 3-通过uploadify on new/create操作将图像作为嵌套对象上载,ruby-on-rails,paperclip,uploadify,Ruby On Rails,Paperclip,Uploadify,我有一个项目,我有几个内容类型(文章,采访等)与嵌套的图像。为了处理图像,我做的是实现一个弹出的“图像上传”框(使用回形针和Uploadify的组合),这样用户就可以立即将图像上传到文章中 这个过程是这样的:用户点击“上传图像”图标,然后弹出一个框,可以在其中添加回形针文件上传字段,上传任意数量的图像。Uploadify立即上传照片,并为其分配附加的文章ID号。然后照片的HTML被发送到WYSIWYG编辑器。如果他们也想删除照片,他们可以。如果它听起来像WordPress,那就是它的基础 不管怎

我有一个项目,我有几个内容类型(文章,采访等)与嵌套的图像。为了处理图像,我做的是实现一个弹出的“图像上传”框(使用回形针和Uploadify的组合),这样用户就可以立即将图像上传到文章中

这个过程是这样的:用户点击“上传图像”图标,然后弹出一个框,可以在其中添加回形针文件上传字段,上传任意数量的图像。Uploadify立即上传照片,并为其分配附加的文章ID号。然后照片的HTML被发送到WYSIWYG编辑器。如果他们也想删除照片,他们可以。如果它听起来像WordPress,那就是它的基础

不管怎么说,我的工作很好。照片与各自的文章保持关联和连接,而不是像许多所见即所得图像上传者那样将所有内容都放在一个大文件夹中,任何人都可以在其中添加/删除任何内容

但这有一个小缺陷…正如我所说的,在执行上传时,图像被分配了内容的ID号。您可以看到,在创建一篇全新的文章时,这是一个怎样的问题,因为一篇新文章在保存之前没有ID号。因此图像上传失败。因此,整个过程仅适用于“编辑/更新”操作

在此期间,我告诉团队首先确保保存文章,然后当他们返回编辑时,他们可以将自己的图像上传到正文中。但很自然,他们会忘记,因为这是一件容易做到的事情,而且这对用户非常不友好,我必须解决这个问题

我有两种方法可以做到这一点

  • 为“新”表单上的项目分配ID(隐藏字段或其他)。这将安抚上传者,因为它会填充它出错的“nil”值,然后当文章第一次保存时,它会给它分配相同的数字。但我看到了一个潜在的问题…如果另一个用户同时创建一篇文章,而数据库为它分配了一个相同的ID号,该怎么办

  • 我注意到,当您创建一个新的WordPress文档时,新文档会立即自动保存为草稿。因此,我的思路是……当用户创建新文档时,“新建”操作实际上会触发“保存”操作,绕过任何验证错误(因为字段为空),然后立即重定向到“编辑”操作。这样,ID就被保存了,一切都会正常工作,整个过程对用户来说可能是无缝的


  • 你会如何处理这种情况?就像我上面建议的那样,或者有更好的方法吗?

    我决定走第二条路线,对新操作执行保存,绕过验证,然后重定向到编辑表单,作为“autosaved”flash消息抛出。它工作得很好