我正在尝试在我的应用程序中实现一些 Ajax。发生了奇怪的行为!这是一个日托应用程序。当您显示特定日期的特定日托时,您可以添加一些孩子。最初会生成数据库的孩子列表,当您单击其中一个时,页面会重新加载,并且一个新孩子会出现在日托的出勤列表中。它工作正常,我只是想添加一些 ajax 来更加用户友好!
当您单击孩子将他添加到日托时,会创建一个 daycare_item(连接表、孩子的 id 和日托的 id)。
我进行了更改以使其准备好 ajax:
- 列表的部分
- daycare_item 控制器中的 format.js
- 链接上的远程为真。
它工作,不再重新加载!但是只有当您在子列表上再次单击时,列表才会更新(最后一个添加的子还没有出现)。js 事务有效,如果您手动刷新页面,则会出现丢失的子项。
我尝试了几件事,这是我的结果:
在我的部分有
<% @daycare.daycare_items.each do |c| %>
<li><%= c.child.firstname ></li>
<% end %>
这会产生一个没有显示的孩子的“滞后”效果(直到完全刷新)
但如果我放一个
<%= @daycare.daycare_items.count %>
代码及时更新!我在日志中没有看到任何奇怪的地方。我在问为什么 .each 方法会有所作为?