ruby-on-rails - Rails - 用一个链接更新多个资源条目

标签 ruby-on-rails ruby design-patterns nested-attributes forms

我有一张表格

<% @group.lessons.each do |lesson| %>
  <%= form_for [@group, lesson] do |f| %>
    <tr id='<%= lesson.id%>' >
      <td><%= f.text_field :time %></td>
      <td><%= f.text_field :day %></td>
      <td><%= f.text_field :subject %></td>
      <td><%= f.text_field :teacher %></td>
      <td><%= f.text_field :room %></td>
      <td><%= f.submit 'Update'%></td>
      <td><%= link_to 'Delete', [lesson.group, lesson], method: :delete%></td>
    </tr>
  <%end%>
<%end%>

单击“更新”按钮时,每个表单都会更新一个条目。但是,当您编辑两个条目并仅更新一个条目时,您在另一个条目中编辑的信息就会消失。

我想要一个按钮来更新表中的每个条目。我该怎么做?

最佳答案

更新:

模型中的第一个:

class Group < AR::Base # possibly you'r using ActiveRecord

  attr_accessible :lessons_attributes
  accepts_nested_attributes_for :lessons, :allow_destroy => true

  has_many :lessons

end

然后在您看来:# 例如 View /组/_form.html.erb

<table>
    <%= form_for @group do |f| %>
      <%= f.error_messages %>
      <%= f.fields_for :lessons do |lesson_form| %>
        <%= render "lessons/lesson", :f => lesson_form%>
      <% end %>
     <tr><td><%= f.submit 'Update'%></td></tr>
   <% end %>
</table>

并在 views/lessons/_lesson.html.erb 中

<tr>
  <td>  
   <%= f.text_field :subject %>
    <%= f.check_box :_destroy %>
    <%= f.label :_destroy, "Remove Lesson" %>
   </td>
</tr>

关于ruby-on-rails - Rails - 用一个链接更新多个资源条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19163388/

相关文章:

ruby-on-rails - 无方法错误 : undefined method `confirm!' for #<User

ruby-on-rails - Rails `edit_joke_path` 链接到显示 View ,而不是编辑 View

mysql - 如何在模型中存储日期?

ruby - NLP对句子的内容进行分类/标注(需要Ruby绑定(bind))

ruby - 为什么在此 ruby​​ 方法调用中空间很重要?

python - Python 的 Ruby 超时?

ruby-on-rails - 在 Rails Controller 测试中,有没有办法模拟特定的远程 IP?

java - 关于基类和派生类的实现问题

java - Checkstyle AbstractClassName 检查 : Reasons for flagging classes ending with "Factory"

Java - 将观察者模式与计时器任务结合起来?