使用SimpleForm上载CarrierWave;为什么" remote_image_url"和"图像"保存到同一个数据库列?

时间:2014-04-10 15:59:06

标签: ruby ruby-on-rails-4 carrierwave simple-form

我有一个带图像上传器的simple_form,它连接到CarrierWave:

<%= simple_form_for @house do |f| %>
  <%= f.input :price  %>
  <%= f.input :town  %>
  <%= f.input :description  %>
  <%= f.input :bedrooms  %>
  <%= f.input :bathrooms  %>
  <%= f.input :url, label: "URL"  %>
  <%= f.input :rating %>
  <%= f.input :remote_image_url %>
  <%= f.file_field :image %>
  <%= f.button :submit, "Add House"  %>
<% end %>

由于某种原因,这两个字段

      <%= f.input :remote_image_url %>
      <%= f.file_field :image %>

存储到我的数据库中完全相同的列,名为&#34; image&#34;。我不明白为什么。

1 个答案:

答案 0 :(得分:4)

通过carrierwave,您可以直接通过<%= f.file_field :image %>从您的计算机上传文件/图片,也可以使用帮助程序方法'remote_image_url'从远程服务器上的链接上传文件/图片。这个命名约定remote_yourimagefield_url很重要,因为通过这个命名结构,carrierwave将会知道从远程服务器获取文件。 As:remote_image_url指向与image相同的列,因此它们存储在同一列中