我有这样的参数:
Parameters: {
"map"=>[
{"lat"=>"51.088672", "lon"=>"71.396522", "vibration_level"=>"300", "time_sent"=>"07:25:00"},
{"lat"=>"51.088672", "lon"=>"71.396453", "vibration_level"=>"300", "time_sent"=>"07:25:01"},
{"lat"=>"51.088829", "lon"=>"71.396476", "vibration_level"=>"300", "time_sent"=>"07:25:14"}
]}
和定义的强参数:
def map_params
params.permit( map: [:lat,:lon, :vibration_level, :time_sent])
end
如何在Rails控制器方法中保存所有3个对象。我可以为1个对象执行此操作,但不能为3个对象执行此操作。
编辑:用于保存我使用的一个对象:
params.require(:map).permit(:lat, :lon, :vibration_level, :time_sent)
但是,我想这不适用于多个对象。
这是一次使用Rails一次创建多个记录的基本方法,
maps = Map.create([
{"lat"=>"51.088672", "lon"=>"71.396522", vibration_level"=>"300", "time_sent"=>"07:25:00"},
{"lat"=>"51.088672", "lon"=>"71.396453", "vibration_level"=>"300", "time_sent"=>"07:25:01"},
{"lat"=>"51.088829", "lon"=>"71.396476", "vibration_level"=>"300", "time_sent"=>"07:25:14"}
])
您可以按如下所示使用map_params来创建所有地图
maps = Map.create(map_params["map"])