gpt4 book ai didi

ruby-on-rails - 回形针:一个模型中有多个 "has_attached_file"

转载 作者:搜寻专家 更新时间:2023-10-30 19:46:10 26 4
gpt4 key购买 nike

我模型的片段:

attr_accessible :package1_file_name, :package2_file_name
has_attached_file :package1
has_attached_file :package2

来 self 的_form(简化版):

<%= form_for(@submission, :html => { :multipart => true, :id => "fileupload"  }) do |f| %>
<%= f.file_field :package1%>
<%= f.file_field :package2%>
<% end %>

问题是回形针将为数据库中的每个文件插入两个单独的条目。但是,我希望它只插入到 一个 条目中,因为我的表中有两个单独的字段:package1_file_namepackage2_file_name

有什么办法可以实现吗?

谢谢!


克里斯蒂安·瓦尔加:

也许我不应该简化我原来问题中的代码,但在使用 jQuery file upload 插件后我的 View 实际上是这样的:

<%= f.fields_for :uploads do |upload| %>
<div class="row fileupload-buttonbar">
<!-- The first upload field -->
<span class="btn btn-success fileinput-button">
<%= upload.file_field :package1 %>
</span>
<!-- The second upload field -->
<span class="btn btn-success fileinput-button">
<%= upload.file_field :package2 %>
</span>
</div>
<% end %>

其中upload是当前模型的子模型

我不确定 multipart 是否使两个文件字段充当单独的附件,但我正在尝试将这两个附件合并为一个。

最佳答案

好的,我已经做了一些研究,但仍然无法重现您的问题。我使用该代码构建了一个测试应用程序,它只向数据库中插入一个条目。

创建项目(终端)

rails new paperclip-test
cd paperclip-test
echo "gem 'paperclip'" >> Gemfile
bundle
rails generate scaffold submission
rails generate paperclip submission package1 package2
rake db:migrate

更新模型(submission.rb)

attr_accessible :package1, :package2
has_attached_file :package1, :styles => { :medium => "300x300>", :thumb => "100x100>" }
has_attached_file :package2, :styles => { :medium => "300x300>", :thumb => "100x100>" }

更新 Controller (submissions_controller.rb)

def create
# @submission = Submission.new(params[:submission])
@submission = Submission.create(params[:submission])
end

更新表单(_form.html.erb)

<%= f.file_field :package1 %>
<%= f.file_field :package2 %>

更新 View (show.html.erb)

<%= image_tag @submission.package1.url(:medium) %>
<%= image_tag @submission.package2.url(:medium) %>

运行应用并创建新提交

回到控制台:

sqlite3 db/development.sqlite3
select * from submissions;

结果:

1|2013-02-21 21:16:38.898602|2013-02-21 21:16:38.898602|image_1.jpg|image/jpeg|54231|2013-02-21 21:16:38.419947|image_2.jpg|image/jpeg|61766|2013-02-21 21:16:38.658720

来自 https://github.com/thoughtbot/paperclip#quick-start 的回形针说明

关于ruby-on-rails - 回形针:一个模型中有多个 "has_attached_file",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14900711/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com