2014-12-28 12 views
6

Sto utilizzando la risorsa angolare e non capisco perché Rails ha duplicato i parametri e lo ha inserito nel nome della risorsa. Devo solo capire perché questo sta accadendo.Rails ha duplicato i parametri all'interno della risorsa

// post data 
{"title":"asdsad"} 

// rails parameters 
Parameters: {"title"=>"asdsad", "presentation"=>{"title"=>"asdsad"}} 

Duplicato perché benvenuto su Stackoverflow in cui sono necessari 50 punti per i commenti, in modo che ciò accada. Ho davvero così dispiaciuto: AngularJS $resource sending out an extra "registration" hash?

risposta

11

..se aver attivato config.wrap_parameters nella vostra inizializzazione [controllare il file config/inizializzatori/wrap_parameters.rb] o [si] sta chiamando wrap_parameters() in il tuo controller ... i parametri saranno clonati e avvolti nella chiave in base al nome del tuo controller per impostazione predefinita.

http://guides.rubyonrails.org/action_controller_overview.html#parameters http://api.rubyonrails.org/classes/ActionController/ParamsWrapper.html

In altre parole, ciò che state vedendo è il modo di default rotaie entra cose nel hash params.

+0

Grazie mille @ 7stud non lo sapevo. –

+1

Appena avuto lo stesso problema, chiamare 'wrap_parameters false' nel controller interromperà anche il comportamento su un livello specifico del controller – doz87