Rails4:在索引操作中添加新的obj可能会导致错误

时间:2016-10-06 00:09:47

标签: ruby-on-rails ruby-on-rails-4

模型关系:
材料有很多表达
express属于材料

expressesController.rb

def index
    @express = @material.expresses.new
    @expresses = @material.expresses
end

问题:
@expresses表中总是有一个空行,即使它是空的。即使@express不为空,表格底部也会出现一个空行。

我不确定,但我认为问题的发生是因为我将@express = @material.expresses.new放在索引操作中。

有人能告诉我导致问题的原因以及解决方法吗?

enter image description here

1 个答案:

答案 0 :(得分:0)

您可以通过两种方式实现,首先用

替换控制器代码
 def index
   @expresses = @material.expresses
   @express = @material.expresses.new
 end

或在您的视图中添加一个检查列表@expresses like

@expresses.each do |express|
  unless express.new_record?
    # your view code
  end
end