我一直试图弄清楚当我的REST API收到UPDATE操作时JSON有效负载应该是什么样子。目前,我正在为json请求获取每个参数,并将其分配给新对象,然后将其持久保存到数据库中。我知道如果我的项目变得更大,这是不现实的。那么我将如何构建Json以便我可以调用:Account来获取整个包而不是每个参数。
def update
respond_with Account.update(params[:id], params[:account])
end
答案 0 :(得分:0)
哦,别介意我最终得到它。
{
"created_at": "2013-02-04T21:23:06Z",
"email": "dat_email@gmail.com",
"updated_at": "2013-02-06T04:06:02Z",
"username": "Rizowski"
}
我只需要将Http请求上的payload参数设置为用户分配给上面的json。然后我把它从json解析为可用的哈希。
id = params[:id]
user = JSON.parse params[:user]
if User.update(id, user)
render json: @user
else
render :status => 400,
:json => { :message => "Something went wrong with saving user changes."}
return
end