ruby 在rails中创建多态关系和表单
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ruby 在rails中创建多态关系和表单相关的知识,希望对你有一定的参考价值。
# Polymorphic Model
class Attachment < ActiveRecord::Base
belongs_to :attachable, :polymorphic => true
mount_uploader :image, ImageUploader
end
# Has Many Model
require 'carrierwave/orm/activerecord'
class Exercise < ActiveRecord::Base
has_many :images , :as=> :attachable, :dependent => :destroy ,:class_name => "Attachment"
accepts_nested_attributes_for :images
mount_uploader :avatar, AvatarUploader
end
# Controller (Exercise)
# Never trust parameters from the scary internet, only allow the white list through.
def exercise_params
params.require(:exercise).permit(
:title,
:instruction,
:avatar,
:images_attributes =>[:image] #nested attributes
)
end
#Form
<%= form_for(@exercise,:html => {:multipart=>true}) do |f| %>
<%= f.fields_for :images,Attachment.new do |i| %>
<%= i.file_field :image %>
<% end %>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
以上是关于ruby 在rails中创建多态关系和表单的主要内容,如果未能解决你的问题,请参考以下文章
如何在 ActiveRecords 中创建对 Ruby 中对象的引用?
通过单击 Ruby on Rails 中的按钮生成表单
Ruby on Rails:以表单提交数组
如何在 ruby on rails 4 中创建高级搜索
ruby 在Rails助手中创建一个HTML块。
如何使用相同的表单在 ruby on rails 中创建和编辑