我有一个story
模型可以作为许多posts
. Posts
可能有照片附件,我使用remotipart和回形针来处理图像上传和处理。
当用户POSTS
使用新的post
. 我想允许post
作者编辑他们的帖子/上传的图片;这就是问题发生的地方。
当用户单击edit
按钮时,我会更改用户创建帖子时最初使用的表单,以便可以使用相同的表单来编辑帖子。作为其中的一部分,我更改了以下<form>
标签:
<form id="new_post_for_story_241" class="new_post" accept_charset="UTF-8" action="/stories/241/posts.json" data-remote="true" enctype="multipart/form-data" method="post" novalidate="novalidate" target="">
至
<form id="new_post_for_story_241" class="new_post" accept_charset="UTF-8" action="/stories/241/posts/287.json" data-remote="true" enctype="multipart/form-data" method="put" novalidate="novalidate" target="">
同样,如果用户不包含图像,这适用于 PUT 编辑。但是,如果表单包含新图像,它会中断。无论出于何种原因,如果用户想要上传一张新图片作为修改后的表单的一部分,则表单会通过 GET 操作提交。触发这个:
Started GET "/stories/241/posts/287.json?post%5Bphoto%5D=champcourse15thgreen.jpg&post%5Bcontents%5D=another+pic%0D%0A&remotipart_submitted=true&X-Requested-With=IFrame&X-Http-Accept=text%2Fjavascript%2C+application%2Fjavascript%2C+application%2Fecmascript%2C+application%2Fx-ecmascript%2C+*%2F*%3B+q%3D0.01" for 127.0.0.1 at 2013-05-22 10:54:50 -0700
ActionController::RoutingError (No route matches [GET] "/stories/241/posts/287.json"):
任何人都知道为什么会发生这种情况,更重要的是,有解决办法吗?