2016-06-28 10 views
0

Ich poste einen Hash von meiner Ruby-App, zu einem API in Ruby mit starken Params gebaut.Ruby on Rails Posting verschachtelte einen verschachtelten Hash zu starken Params

Mein Beitrag sieht wie folgt aus:

resp = Net::HTTP.post_form(url, 'order' => @order.to_json, 'max' => '50') 

Das Problem ist, dass dies nicht mit starken params

[3] pry(#<Api::V1::OrdersController>)> order_params 
NoMethodError: undefined method `permit' for #<String:0x007feb6890acf8> 

Wie ich diesen Beitrag richtig funktioniert? Außerdem möchte ich auch eine verschachtelte Datei in Auftrag geben.

params[:order][:pickup_attribute] 

Wie kann ich das auch senden?

Antwort

0

Sie geben order als String ein. Versuchen Sie folgendes:

resp = Net::HTTP.post_form(url, 'order' => @order.as_json, 'max' => '50') 

Beachten Sie die as_json (gibt einen Hash) anstelle von to_json (die einen String zurückgibt). Wenn es nicht funktioniert, würde ich gerne die Implementierung Ihres Controllers sehen.