簡體   English   中英

回形針-樣式lambda

[英]paperclip - styles lambda

我有一個腳本可以從中加載我的rails環境。

當我建立附件並保存其父對象時,附件樣式保存和創建的所有內容始終為[“ 100>”,“ jpg”]

我的劇本:

require './config/environment.rb'
house = House.find(1)
house.attachments.build(doc: File.new('myfile.pdf'), category_id: 2)
house.save

楷模

House < AR::Base
  has_many :attachments, :as => :attachable
end

Attachment < AR::Base
  ### has_attached_file :doc, styles: lambda {|attachment| {thumb: (attachment.instance.category_id == 2 ? ["500>", 'jpg'] : ['100>', 'jpg']} )}  
  has_attached_file :doc, styles: lambda {|attachment| {thumb: (attachment.instance.category_id == 2 ? ["500>", 'jpg'] : ['100>', 'jpg'] )}}  #category_id is always nil at this point but still still saves in the database 
  belongs_to :attachable, polymorphic: true
end

我猜我在這里忽略了一些愚蠢的事情,但任何指針我都會感激的:)

您在該lambda上的語法看起來有些時髦。 我不確定該三元運算符是否不會發出“意外的':'”。

試一下:

Attachment < AR::Base
  has_attached_file :doc, styles: lambda {|attachment| { thumb: (attachment.instance.category_id == 2 ? ["500>", 'jpg'] : ['100>', 'jpg'])}}
  belongs_to :attachable, polymorphic: true
end

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM