所以我在一个新的 rails 4 应用程序中有一个控制器,它接收来自另一个应用程序的 JSON POST 调用,该应用程序通过 RestClient 发送最少的参数:
{
value: 2
user_email: "person1@example.com"
}
但是,我在 rails 4 应用程序中获得的参数让我感到困惑
{"value" => "2", "user_email" => "person1@example.com", "point" =>
{ "value" => "2", "user_email" } }
为什么会这样?
有问题的控制器(puts params
产生上面的哈希)
class PointsController < ApplicationController
# Security, other omitted for brevity
def create_or_update
puts params
@point = Point.where(user_email: params['user_email']).first_or_initialize
if @point.update_attributes(point_params)
render json: @point
else
render json: @point.errors.messages, status: 422
end
end
private
def point_params
params.require(:point).permit(:user_email, :value)
end
end