【问题标题】:How to save a paperclip attachement from the params hash?如何从参数哈希中保存回形针附件?
【发布时间】:2012-04-03 12:56:21
【问题描述】:

如果哈希 params[:vacancy]['companies']['company_logo'] 存在,我正在尝试创建我的 CompanyLogo 模型的实例。我正在尝试这样做:

l = CompanyLogo.new( :company_logo => params[:vacancy]['companies']['company_logo'].tempfile.path )

但这给了我

CompanyLogo(#70304040244500) expected, got ActionDispatch::Http::UploadedFile(#70304015073440)

有没有办法做到这一点?

【问题讨论】:

  • 你能粘贴你的完整参数散列
  • 你的模型在回形针方面是什么样的?

标签: ruby-on-rails ruby hash paperclip params


【解决方案1】:

如果您的 CompanyLogo 有_attached :logo,并且您正在手动保存文件,那么只需 company_logo_object.logo = File.new(actual_path) company_logo_object.save 即可解决您的目的

【讨论】:

    【解决方案2】:

    先尝试保存徽标(在 Rails 3.2.2 中使用 Paperclip 测试过)

    (logo = CompanyLogo.new(:image => params[:image])).save

    company_object.update_attributes(logo: logo)

    【讨论】:

    • 我已经接受了另一个答案,我认为您的方法也有效,尽管.update_attributes(logo: logo) 对我来说看起来很奇怪。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-29
    • 2014-08-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多