ユーザーパラメーターがすべてJSONパラメーターを使用してRESTfulAPIを介して提供されるRailsアプリケーションがあります。具体的には、ユーザーがデータを投稿するクライアント側のHTMLフォームはありません。それは生のJSONです。
したがって、新しい車のエントリを作成するには、ユーザーは次のようになります。
POST www.mysite.com/api/car
model=Ford&year=2012
私のアプリでは、これを受け取るまでに、アクションパックの値がparams []ハッシュのユーザー値と混ざり合っているため、次のようになります。
params = {:model=>"Ford", :year=>"2012", :format=>"json", :action=>"create", :controller=>"api/cars"}
ユーザー生成パラメーターをアクションパックによって生成されたパラメーターから分離するための最良の方法は何ですか?私が考えることができる最善の方法は、後者を削除することです。
car_params = params.reject {|k,v| [:format, :action, :controller].member?(k)}
car = car.new(car_params)
しかし、それは正しいにおいがしません。もっと良い方法はありますか?(たとえば、Action Packを取得して、ユーザーが指定したparamsを単一のハッシュにカプセル化し、それをparams []の単一の要素として渡すことはできますか?)