Ruby on rails 为什么这个简单的字段不能执行?

Ruby on rails 为什么这个简单的字段不能执行?,ruby-on-rails,ruby-on-rails-5,simple-form,nested-forms,simple-form-for,Ruby On Rails,Ruby On Rails 5,Simple Form,Nested Forms,Simple Form For,我有两种型号: class PortStock < ApplicationRecord has_many :closed_positions accepts_nested_attributes_for :closed_positions end class ClosedPosition < ApplicationRecord belongs_to :closer, class_name: "PortStock", foreign_key: "closer_id" b

我有两种型号:

class PortStock < ApplicationRecord
  has_many :closed_positions
  accepts_nested_attributes_for :closed_positions
end

class ClosedPosition < ApplicationRecord
  belongs_to :closer, class_name: "PortStock", foreign_key: "closer_id"
  belongs_to :closed, class_name: "PortStock", foreign_key: "port_stock_id" 
end
但是,当呈现HTML时,它不会呈现的
simple\u fields\u中的任何文本字段

如果我在
行的
f.simple\u fields\u前面放置一个
binding.pry
,它将停止执行。如果我把它放在后面,它就不会。这告诉我,
简单字段\u没有被执行

但我应该这样做

我错过了什么?为什么不在
简单字段中呈现表单字段呢?

我明白了

我实际上没有在我的控制器中构建
关闭位置

因此,一旦我将此代码添加到控制器:

@port_stock.closed_positions.build
这很有魅力

@port_stock.closed_positions.build