使用Grape gem时如何自定义状态代码响应? e.g。
post do
status = :accepted
@order = Order.find(params[:id])
end
这可以通过错误实现!({error:' Order not found'},404)但是如何为非错误做到这一点?
答案 0 :(得分:8)
找到解决方案:
post do
status 203
@order = Order.find(params[:id])
end
答案 1 :(得分:0)
从您的代码中我看到您正在使用@order
,但您之前未对其进行定义,因此未在视图中找到并提供错误
希望您的代码看起来像更新状态一样,以便您可以使用put
代替post
put ':id' do
@order = Order.find(params[:id])
@order.update_attributes!(:status, :accepted)
end
或post
post do
@order = Order.new
@order.status = :accepted
@order.save!
end