我想與回形針做多態關聯,並允許我的用戶有一個化身和多個圖像。rails 3與回形針和多個模型的多態關聯
附件模型:
class Attachment < ActiveRecord::Base
belongs_to :attachable, :polymorphic => true
end
class Avatar < Attachment
has_attached_file :image, :styles => { :thumb => "150x150>", :view => "260x180>" },
end
class Image < Attachment
has_attached_file :image, :styles => { :thumb => "150x150>", :view => "260x180>" },
end
用戶模型:
has_one :avatar, :as => :attachable, :class_name => 'Attachment', :conditions => {:type => 'avatar'}
accepts_nested_attributes_for :avatar
用戶控制器:
def edit
@user.build_avatar
end
用戶視圖形式:
<%= form_for @user, :html => { :multipart => true } do |f| %>
<%= f.fields_for :avatar do |asset| %>
<% if asset.object.new_record? %>
<%= asset.file_field :image %>
<% end %>
<% end %>
當我嘗試保存更改出現錯誤=>未知屬性:化身
如果刪除:在HAS_ONE關聯我得到錯誤=> 未初始化的常數用戶CLASS_NAME>「附着」 ::頭像
我還需要附加的化身,以博客,所以我需要聯想到是多態的(或至少我這麼認爲)
我難倒任何幫助,將不勝感激。
啊,就是我所需要的,謝謝Brett! – kaigth
@kaigth,對不起,我給了你這樣一個繞圈。我應該剛剛開始。最好的祝願。 – Brett
基於多態關係,藝術品模型中附件的樣式可以不同於專輯和歌曲嗎? – ramkumar