J'utilise le paramètre strong_parameters gem avec Rails 3.2 depuis un bon bout de temps. Et jusqu'à maintenant tout allait bien. Après la récente mise à jour des paramètres forts vers la version 0.2.0, je ne peux plus mettre à jour les objets imbriqués.Comment mettre à jour des objets imbriqués après la mise à jour de strong_parameters sur rails 3.2?
Voici la demande params
{
"resource"=>{
"name"=>"1362483207-11-offer",
"slug"=>"1362483207-11-offer",
"code"=>"136248320711",
"category_id"=>"4",
"price"=>"100",
"short_description"=>"",
"description"=>"",
"offer_card_types_attributes"=>{
"0"=>{"id"=>"11", "card_type_id"=>"1"},
"1"=>{"card_type_id"=>"0"},
"2"=>{"card_type_id"=>"0"},
"3"=>{"card_type_id"=>"0"}
},
"show_banner"=>"1",
"autoclaim"=>"1",
"published"=>"0",
"number_of_codes_to_generate"=>"",
"images_attributes"=>{
"0"=>{"retained_image"=>"", "_destroy"=>"true", "id"=>"1"},
"on-1362560061857"=>{
"image"=>#<ActionDispatch::Http::UploadedFile:0x0000080ef654f8 ... >
}
},
"partner_id"=>"2",
"all_checkout_places"=>"0",
"offer_checkout_places_attributes"=>{
"0"=>{"checkout_place_id"=>"0"},
"1"=>{"id"=>"11", "checkout_place_id"=>"7"},
"2"=>{"checkout_place_id"=>"0"},
"3"=>{"checkout_place_id"=>"0"},
"4"=>{"checkout_place_id"=>"0"}
}
},
"id"=>"11"
}
J'ai essayé cela et params params que. Je ne mets tout simplement pas à jour les objets imbriqués. S'il vous plaît aider
Au début, je pensais que params.require(:resource).permti(..., :images => [])
devrait faire l'affaire, mais il a échoué, puis j'ai essayé diverses autres options. Ils ont tous échoué.
Comment puis-je autoriser tous ces objets imbriqués.
pouvez-vous mettre votre code de modèle? C'est probablement un problème avec l'assignation de masse (attr_accessible) – rorra
attr_accessible n'est pas un problème. En fait je ne l'utilise pas '' 'config.active_record.whitelist_attributes = false''' – graudeejs