在rails中使用嵌套表单提交图像

时间:2013-09-10 02:46:55

标签: ruby-on-rails ruby-on-rails-3 paperclip nested-forms

以下是我对帖子的看法

<%= nested_form_for Post.new,url: {action: :create} do |f| %>
<%= f.text_field :title,placeholder: 'Ad title' %>
<%= f.text_area :description, :cols => 80, :rows => 20, :class => 'tinymce' %>
<%= f.fields_for :image, :html => { :multipart => true, :id => "fileupload"  } do |uploads| %>
<%= uploads.file_field :upload %>
<button type="submit">Start upload</button>
<% end %>
<input type="submit" />
<% end %>

如果我点击start upload,则会重定向到action: :create。我需要通过ajax上传图片。我怎样才能实现它。

修改1

我试过这个

<script type="text/javascript" charset="utf-8">
  $(function () {
      $('#fileupload').submit(function(){
        alert('test');
      })

  });
</script>

但表单会直接提交给action: :create

1 个答案:

答案 0 :(得分:0)

我认为您需要有两个单独的表单,然后使用css在中间显示图像。否则,图像将始终以其他形式提交(除非您在ajax之后将其删除。请尝试使用remote: true选项进行AJAX上传,但是,我不确定它是否可行。使用AJAX上传是非常棘手。我最后一次使用iframe(2年前)。