def menu_params
params.permit(menu: [:name]).require(:menu)
end
def update
if @menu.update(menu_params) ------->line 29
render json: @menu
else
render json: @menu.errors, status: :unprocessable_entity
end
end
def set_menu
@menu = Menu.find(params[:id])
end
http请求(邮递员休息客户端)。这是一个PUT(更新)请求,用于编辑菜单表中的两个记录。在网址中附加了ID。 http://localhost:3000/menus/1,3
{
"menu": [
{
"name":"breakfast12"
},
{
"name":"lunch 12"
}
]
}
这是我的代码的一部分。我试图在一个请求中更新多行。
我还在routes.rb
但我面临这个错误。
#Patch / PUT / menus / 1 MenusController#update中的ArgumentError 分配属性时,必须将哈希作为参数传递。
指着第29行。
有没有办法遍历网址中指定的ID?如此处所示,它仅显示/menus/1
。
有没有办法在json请求存根中指定id?
答案 0 :(得分:0)
试试这个:
def menu_params
params.require(:menu).permit(:name)
end