1

コンソールに次のエラーが表示されます

Unpermitted parameters: post_detail
Unpermitted parameters: post_detail

私の投稿モデルは

has_many :post_details
accepts_nested_attributes_for :post_details

私のpost_detialモデルには

belongs_to :post
has_attached_file :upload

post.rb私のpost_detail.rbモデルファイル posts_controllerはコントローラーです これが私のフォームです

ここに私の posts_controller.rb があります

def create
    @post = Post.new(post_params)
    @post.build.post_detail
end
    private
      def post_params
        params.require(:post).permit(:title,:post_details => [:upload_file_name,:upload_file_size,:upload_file_content])
      end

編集 1

<%= form_for @post,html: {multipart: true} do |f| %>
<%= f.text_field :title,placeholder: 'title' %>
<%= f.fields_for :post_detail do |uploads| %>
<%= uploads.file_field :upload %>
<% end %>
<%= f.submit 'submit' %>
<% end %>

私のポストコントローラー

  def new
    @post = Post.new
    @post.post_details.build
  end

  def create
    @post = Post.new(post_params)
    if @post.save
      #some flash
    end
  end

private
  def post_params
    params.require(:post).permit(:title,:post_details_attributes => [:id, :upload_file_name,:upload_file_size,:upload_file_content,:_destroy])
  end

まだunpermitted parameters: post_details発生する

4

1 に答える 1

0

アクションでを作成してpost_detailsから、アクションのすべてのパラメーター ( を含む)newを使用して投稿を保存する必要があります。post_details_attributescreate

def new
  @post = Post.new
  @post.post_details.build
end

def create
  @post = Post.new(post_params)
  @post.save
end
private
  def post_params
    params.require(:post).permit(:title,:post_details_attributes => [:id, :upload_file_name,:upload_file_size,:upload_file_content, :_destroy])
  end
于 2013-09-12T18:43:20.963 に答える