0

这是我的需要:

我有三个奖品,每个奖品都有一张照片,例如:

奖品1 pic1奖品2
pic2
奖品3 pic3

这是我的设计:

我在我的数据库中使用了四条记录,第 1 到第 3 行是从第 1 到第 3 奖的映射,第 4 行是默认奖品,可以用作添加奖品。

问题来了:

用户回形针何时上传我的照片,识别每张照片都有一些问题。详情如下:

<form>
<input type="file" name="pic[]">
<input type="file" name="pic[]">
<input type="file" name="pic[]">
<input type="submit">
</form>

当我选择choose file上传和提交表单时,pic数组将通过参数传递,所以我可以得到图片,并按数组的顺序保存它们。

但是,当我只choose file中奖时,数组的大小为1,我无法判断后端改变了哪一个,所以我想听听大家的意见,让我看看你如何设计它,或者我可以做一些改变来解决它!

任何方式的坦克

4

1 回答 1

0

您需要确保上传的照片是更新您想要的奖品的正确资源。

假设您数据库中的每个奖品都有自己的行和回形针列设置正确,您将希望表单如下所示:

= form_for @prize, method: 'put', html: { multipart: true } do |f|
  = f.file 'pic'
  = f.submit

这应该PUT将图片信息传递给控制器​​,/prize/1234并且控制器应该将照片字段/参数视为属性并相应地更新。

需要注意的事项:

  1. 不要忘记添加多部分
  2. 确保回形针配置正确
  3. 确保产品的其他属性也可以更新

祝你好运!

于 2013-02-03T10:11:51.173 回答