如何使用 Active Admin 的表单块来更新跟踪当前资源中的特定属性何时更新的表?
例如,我有这样的事情:
form do |f|
f.inputs "Details" do
f.input :name
f.input :address
f.input :zip
f.input :city
f.input :active_state, as: :select, collection: active_states
f.input :approval_state, as: :select, collection: approval_states
f.input :new_comment
end
f.buttons
end
new_comment
除了是当前资源上存在的属性之外的所有内容。
我尝试在课堂上为资源做这样的事情:
def new_comment
history = History.new(:id, Time.now)
history.comment
end
当失败时,我也尝试创建一个控制器实例变量,但这也不起作用。场地课程与历史课程没有任何关联。我只是想创建一个输入列,每当用户编辑场地然后添加评论时,它将在我的历史记录表中创建一个新行。
历史模型如下所示:
class History < ActiveRecord::Base
attr_accessible :comment, :venue_id, :created_at
belongs_to :venue
def initialize(id, datetime)
@id = id
@datetime = datetime
end
end
该表格适用于如下所示的场地:
class Venue < ActiveRecord::Base
attr_accessible :name, :address, :zip, :city
has_many :histories
accepts_nested_attributes_for :histories
//with a bunch of methods
end
经过一番挖掘后,我尝试这样做,但它也不起作用:
form do |f|
f.inputs "Details" do
f.input :name
f.input :address
f.input :zip
f.input :city
f.input :active_state, as: :select, collection: active_states
f.input :approval_state, as: :select, collection: approval_states
end
f.inputs "History" do
f.has_many :histories do |h|
h.input :id
h.input :comment
h.input :modified_at
end
end
f.buttons
end