我想知道是否有办法将params绑定到现有对象以进行编辑。我想做这样的事情,但要编辑对象:
@object = Object.new(params[:object])
类似于:
@object = Object.find(params[:object_id])
@object.edit(params[:object])
params[:object]
来自form_for
有什么想法吗?
答案 0 :(得分:5)
您可以使用
@object.assign_attributes(params[:object])
或
@object.attributes = params[:object]
答案 1 :(得分:1)
如果目标是编辑params
发送的form_for
,您可以将其分配给哈希并开始编辑。
@params = params
# and do whatever to the @params
之后,您可以使用assign_attributes
作为Ahmad Sherif指示或new
或update_attributes
将其分配给模型记录。