Javascript 如何在创建父记录时存储子记录
我有一个创建/编辑游览记录的表单,Javascript 如何在创建父记录时存储子记录,javascript,ruby-on-rails,ajax,asynchronous,model-view-controller,Javascript,Ruby On Rails,Ajax,Asynchronous,Model View Controller,我有一个创建/编辑游览记录的表单,有很多:游览图像 在这种形式中,嵌套的偏移图像由js通过远程调用()创建 此解决方案在编辑偏移上非常有效,但在创建时却不起作用,因为父对象还没有id 我有一个解决方案,但不确定是否有更好的选择: 允许在没有偏移的情况下创建偏移图像 在新表单上创建带有“图像代码”的隐藏字段 创建偏移图像时,在表单内部,在属性上保存相应的“图像代码” 保存偏移时,使用“图像\代码”查找所有偏移\图像 似乎效率不高!还有别的办法吗?我不知道你是否已经研究过了,但我相信的逆\u可以用来
有很多:游览图像
在这种形式中,嵌套的偏移图像
由js通过远程调用()创建
此解决方案在编辑偏移上非常有效,但在创建时却不起作用,因为父对象还没有id
我有一个解决方案,但不确定是否有更好的选择:似乎效率不高!还有别的办法吗?我不知道你是否已经研究过了,但我相信
的逆\u可以用来解决这样的问题,有一些很好的解释
它基本上帮助您处理内存中的相关记录您提出的解决方案非常完美。这似乎不是很有效,但这是唯一的办法。我不认为有任何变通办法可以在父母之前存储孩子
我自己在类似的情况下也遇到了不少麻烦,直到我完全按照你所做的去做
只是您必须定期删除所有图像,其中偏移量为nil
(根据@paul noe),或者在上传图像之前要求使用一些基本信息创建偏移量。如果以后创建的游览失败-你会将已存在的游览标记为取消我不想妨碍体验,我希望所有内容都在同一视图上,如果用户想先上传图像,我宁愿让他上传。我猜事先创建空的游览也是一个很好的解决方案,但这也让我感到不舒服。你可以通过创建第一个上传的文件来保持体验。“空”游览将扮演与你现在使用的“图像代码”完全相同的角色,但更容易理解有趣的是,与我使用的方法(步骤1)相比,问题在于这需要同时发送两个对象,但fineuploader会在文件上传后立即发送一个请求,这似乎更好。是的,可以通过定期删除偏移为零的任何图像以更简单的方式完成。更新答案