1

如果我使用 model 验证表单,则不会保留附加的图像。我们使用回形针 gem 'paperclip', "~> 3.4.0"。我遵循以下步骤。

步骤:该表单具有公司名称
(强制)位置、对象类型、对象大小(强制)和附件(强制)等字段。

1.填写company_name(mandatory),location,object_type 并附上图片 2.不要填写object_size(mandatory) 有模型验证。3.点击提交,模型验证显示,但附件图像消失。

(注:如果表格第一次填写正确,图片会被正确保留并存储在s3数据库中)

任何人都可以帮助我吗?

4

2 回答 2

3

您只需要表单中的文件字段,其他三个默认回形针对象属性不需要表单字段,并且通过图像上的元数据标签设置。

<p>
  <%= f.label :avatar, "Select Profile Picture*" %><br />
  <%= f.file_field :avatar %>
</p>

要验证在您的模型中使用它:

validates :avatar,   :attachment_presence => true,
                     :attachment_content_type => { :content_type => [ 'image/png', 'image/jpg', 'image/gif', 'image/jpeg' ] }
于 2013-08-28T16:25:56.507 回答
0

您不能为文件字段分配值,这是一个安全风险

例子:

<form id="bad_form" action="/my_url">
  <input type="file" value="/Users/bob/my_very_secret_file.txt">
</form>
<script>
  $('#bad_form').submit();
</script>
于 2013-08-27T14:09:23.077 回答