1

というモデルを設定してWallAssetsます。アセット モデルはクリップ モデルです。すべて問題ないように見えますが、フォームがレンダリングされません。ではwalls controller、ラインで 5 つのアセットを構築しています5.times { @wall.assets.build }。この行ap @wall.assets.buildは、コンソールに 5 つの資産レコードを正常に出力します。以下のコードを含めました。私は自分が何を間違ったのか見ることができません。誰でも何か考えがありますか?

wall.rb

class Wall < ActiveRecord::Base
  has_many :assets, :as => :assetable
  accepts_nested_attributes_for :assets, :allow_destroy => true
end

asset.rb

class Asset < ActiveRecord::Base
  belongs_to :assetable, :polymorphic => true
  attr_accessible :assetable_id, :assetable_type
  has_attached_file :asset, :styles => { :medium => "300x300>", :thumb => "100x100>" }
end

walls_controller.rb

  def new
    @wall = Wall.new
    5.times do
      @wall.assets.build
    end
    ap @wall.assets
    respond_to do |format|
      format.html # new.html.erb
      format.json { render json: @wall }
    end
  end

  def edit
    @wall = Wall.find(params[:id])
    5.times do
      @wall.assets.build
    end
  end

_form.html.haml

= form_for @wall, :html => { :class => 'form-horizontal', :multipart => true } do |f|
  .control-group
    = f.label :name, :class => 'control-label'
    .controls
      = f.text_field :name, :class => 'text_field'
  - f.fields_for :assets do |asset|
    = asset.file_field :asset
  .form-actions
    = f.submit nil, :class => 'btn btn-primary'
    = link_to t('.cancel', :default => t("helpers.links.cancel")), walls_path, :class => 'btn'

乾杯

トニー

4

0 に答える 0