繁体   English   中英

Ruby on Rails多个按钮

[英]Ruby on Rails multiple Buttons

我写了以下内容:

<% if @document != nil %>
<%= form_for(@document, :html => { :multipart => true }) do |f| %>
  <% if @document.errors.any? %>
<div id="error_explanation">
  <h2><%= pluralize(@document.errors.count, "error") %> prohibited this document from being saved:</h2>

  <ul>
  <% @document.errors.full_messages.each do |message| %>
    <li><%= message %></li>
  <% end %>
  </ul>
</div>
<% end %>
<% if notice %>
  <p id="notice"><%= notice %></p>
<% end %>
<%= render partial: 'documents/resume' %>
<div id="add_buttons">
  <%= f.file_field :resume %>
  <%= f.submit %>
</div>
<% end %>
<% else %>
<h1>No Document Available</h1>
<% end %>

很抱歉缩进,复制/粘贴没有正确粘贴。 无论如何,只要我列出的简历部分中我的删除按钮都已被注释掉,这可以使用回形针并且可以很好地上传文档。 这是该部分代码:

<div class='Resume_1'>
  <%#= @current_user = session[:user] %>
  <%#= @document = @current_user[:document] %>
  Current Resume: 
  <%= render partial: 'documents/resumelink' %>
</div>
<div class='Resume_2'>
  <% if (@document != nil) && (@document.resume_file_name != nil) %>
    <%= button_to "Delete Resume", @document, method: :delete, data: { confirm: 'Are you sure you wish to delete your resume?' } %>
  <% end %>
</div>

如果将button_to行注释掉,则更新文档(f.submit)按钮可以正常工作。 但是,如果保留button_to行,则f.submit按钮将不执行任何操作。 这是destroy函数(这是delete方法被路由到的函数),因为这实际上似乎也没有删除简历。

  def destroy
    @document.resume = nil
    respond_to do |format|
      format.html { redirect_to welcome_url, notice: 'Resume was successfully deleted.' }
      format.json { head :no_content }
    end
  end

谢谢你的帮助。

如果您看docs 由button_to助手生成的html是

<%= button_to "New", action: "new" %>
# => "<form method="post" action="/controller/new" class="button_to">
#      <div><input value="New" type="submit" /></div>
#    </form>"

因此,当您在表单内有一个button_to时,您基本上就在表单内有一个表单,因此您的提交按钮不起作用。

固定:

代替使用button_来使用link_to助手,并提供引导程序类或一些自定义类以使其看起来像按钮

<%= link_to "Delete Resume", @document, class: "btn btn-default" method: :delete, data: { confirm: 'Are you sure you wish to delete your resume?' } %>

暂无
暂无

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

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