繁体   English   中英

Rails 4,回形针和多态关联

[英]Rails 4, Paperclip and polymorphic association

我有2个模型:News和Uploadedfile

class News < ActiveRecord::Base
    has_many :uploadedfiles, as: :parent
    attr_accessible :title, :content, :author
end

class Uploadedfile < ActiveRecord::Base
    belongs_to :parent, polymorphic: true
    has_attached_file :url
    attr_accessible :url_file_name, :url_content_type, :url_file_size, :url_updated_at
end

和形式:

<%= form_for(@news) do |f| %>

    <div class="field">

        <%= f.fields_for :uploadedfile, f.uploadedfile.new do |uf| %>
            <%= uf.label :url %><br>
            <%= uf.file_field :url %>
        <% end %>

    </div>

  <div class="actions">
    <%= f.submit %>
  </div>
<% end %>

当我提交表格时,我的表格上uploadedfile未更改

问题出在哪儿? 谢谢!

我认为您已经嵌套了arribute :uploadedfiles

class News < ActiveRecord::Base
     has_many :uploadedfiles, as: :parent
    attr_accessible :title, :content, :author, :uploadedfiles_attributes
    accept_nested_attributes_for :uploadedfiles
end

并以形式:更改:

 <%= f.fields_for :uploadedfile, f.uploadedfile.new do |uf| %>

至:

<%= f.fields_for :uploadedfiles, Uploadedfile.new do |uf| %>

我认为这里不需要多态关联。 这是一种更易读的方法:

class News < ActiveRecord::Base
    has_many :uploadedfiles
    attr_accessible :title, :content, :author
    accept_nested_attributes_for :uploadedfiles
end

class Uploadedfile < ActiveRecord::Base
    belongs_to :news
    has_attached_file :url
    attr_accessible :url_file_name, :url_content_type, :url_file_size, :url_updated_at
end

*请注意,我已经添加了accept_nested_attributes_for

以及形式:

<%= form_for(@news) do |f| %>

    <div class="field">

        <%= f.fields_for :uploadedfiles do |uf| %>
            <%= uf.label :url %><br>
            <%= uf.file_field :url %>
        <% end %>

    </div>

  <div class="actions">
    <%= f.submit %>
  </div>
<% end %>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM