我有一个带有图像 uploader 的 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 %>
存储到我的数据库中完全相同的列,该列名为“image”。我不明白为什么。
最佳答案
通过Carrierwave,您可以直接通过<%= f.file_field :image %>
从您的机器上传文件/图片。 ,或使用辅助方法 'remote_image_url' 从远程服务器上的链接。此命名约定remote_yourimagefield_url
很重要,因为 Carrierwave 将通过这种命名结构来了解从远程服务器获取文件。由于 :remote_image_url 与 :image 指向同一列,因此它们存储在同一列中
关于ruby - 使用 SimpleForm 上传 CarrierWave;为什么 "remote_image_url"和 "image"保存到同一数据库列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22993123/