【发布时间】:2020-10-06 10:43:57
【问题描述】:
我创建了一个 R-o-R Form 对象,它接受属性,然后将这些属性保存到一些嵌套对象中,但是,在验证失败时,输入值会消失。有没有办法留住他们?
class FormObject
include ActiveModel::Model
attr_accessor(:name, :date)
def initialize(params = {})
@params = params
end
def save
return if invalid?
no = NestedObject.new(nested_object_params)
no.save
end
def nested_object_params
@params.permit(:name, :date)
end
end
这是控制器
class Controller
def new
@form = FormObject.new
end
def create
@form = FormObject.new(form_object_params)
if @form.save
redirect_to ...
else
render :new
end
end
def form_object_params
params.require(:form_object).permit(:name, :date)
end
end
【问题讨论】:
标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-4