两种形式,一种提交 rails

Posted

技术标签:

【中文标题】两种形式,一种提交 rails【英文标题】:Two forms, one submit rails 【发布时间】:2015-11-14 10:43:53 【问题描述】:

我有一个问题:

我的第一个表单

 <div class="authform">
   <h3>Edit <%= resource_name.to_s.humanize %></h3>
   <%= form_for(current_user, :url => registration_path(current_user ), :html =>  :method => :put, :role => 'form', :id => "form1") do |f| %>
     <%= devise_error_messages! %>
     <div class="form-group">
       <%= f.label :nombre %>
       <%= f.text_field :nombre, :autofocus => true, class: 'form-control' %>
     </div>
      <div class="form-group">
       <%= f.label :email %>
       <%= f.email_field :email, class: 'form-control' %>
      </div>
     </div>
      <% end %>
 </div>

第二种形式是

  <%= simple_form_for(@auto, html:  method: :post, id: :subir ) do |f| %>
    <%= f.error_notification %>

    <div class="form-inputs">
       <%= f.association :region %>
       <%= f.association :ciudad %>
       <%= f.association :marca %>
       <%= f.input :modelo %>
       <%= f.input :version %>
   </div>
  <% end %>

  <%= link_to "Save", edit_user_registration_path, :class => 'button_submit' %>

自动咖啡

 jQuery ->
    $(".button_submit").live "click", (e) ->
      e.preventDefault()
      $("#form1").trigger "submit"
      $("#subir").trigger "submit"

我需要这个来保持真相并且没有意识到这一点。我做错了,请帮忙。

问候。

【问题讨论】:

看看***.com/questions/19260755/… 您面临什么问题?出了什么问题? 【参考方案1】:

建议只使用一种形式。但是,如果您想在 Rails 中使用多种形式,您可以将语义形式用于语义嵌套字段,这将帮助您使用多种形式,并且对于保存具有关系的数据也很有用。 https://github.com/ryanb/nested_form供您参考。

这样的修改形式,

<%= semantic_form_for current_user, :url => registration_path(current_user ), :html =>  :method => :put, :role => 'form', :id => "form1" do |f| %>
  <%= devise_error_messages! %>
  <div class="form-group">
    <%= f.label :nombre %>
    <%= f.text_field :nombre, :autofocus => true, class: 'form-control' %>
  </div>
  <div class="form-group">
    <%= f.label :email %>
    <%= f.email_field :email, class: 'form-control' %>
  </div>
  <%= f.semantic_fields_for(@auto, html:  method: :post, id: :subir ) do |form| %>
    <%= form.error_notification %>
    <div class="form-inputs">
      <%= form.association :region %>
      <%= form.association :ciudad %>
      <%= form.association :marca %>
      <%= form.input :modelo %>
      <%= form.input :version %>
    </div>
  <% end %>
<% end %>

你也应该在用户模型中,

 class User < ActiveRecord::Base
    has_many :posts
    accepts_nested_attributes_for :posts, :reject_if => :all_blank, :update_only => true, :allow_destroy => true
  end

【讨论】:

以上是关于两种形式,一种提交 rails的主要内容,如果未能解决你的问题,请参考以下文章

强制点击提交按钮两次

以源文件的形式交作业是什么意思?

Thymeleaf 以一种形式提交多个提交按钮

写入我的数据库并使用相同的表单向 Paypal 提交表单?

一个提交按钮需要一种形式的输入字段,而其他按钮不需要?

springboot使用restTemplate post提交值 restTemplate post值