0
我有存儲關於照片的數據的多態模型。我將該模型用於許多類型的內容,例如用戶照片(content_type:User,content_id:user_id),遊戲屏幕截圖等。直到現在,我僅將該照片模型用於已存在的內容。現在我需要在創作階段爲某些模型添加一些照片。Ruby on Rails - 將照片添加到未保存的模型
問題是,我無法將content_id傳遞給partial,因爲模型在保存之前沒有它。
下面請找到適用於現有型號的代碼。
代碼photos/add_photo
部分組成:
<% form_for(@photo, :html => { :multipart => true }) do |f| %>
<%= f.error_messages %>
<%= f.hidden_field :attachable_id, :value => content.id %>
<%= f.hidden_field :attachable_type, :value => content.class.name %>
file inputs goes here...
<%= f.submit "Upload" %>
<% end %>
在這裏,我是如何通過實例變量,局部在遊戲的看法:
<%= render :partial => 'photos/add_photo', :locals => { :content => @game } %>
現在我希望讓用戶添加截圖給新創建的報告。我有控制器:
def new
@raport = Raport.new
end
我該如何強制模型保留或生成ID?也許我應該找出另一個解決方案並更改整個代碼?