2
我已經被傳遞給我的ProfilesController#Update
以下參數:如何修改操作中在控制器中設置的`params`?
> profile_params[:videos_attributes]
=> <ActionController::Parameters {"1479585381276"=><ActionController::Parameters {"vimeo_url"=>"https://www.youtube.com/watch?v=Qj2gkjh3-k", "official"=>"false", "_destroy"=>"false"} permitted: true>, "1479585385202"=><ActionController::Parameters {"vimeo_url"=>"https://vimeo.com/some-awesome-video", "official"=>"true", "_destroy"=>"false"} permitted: true>} permitted: true>
我想要做的就是刪除與關鍵1479585381276
哈希(或任何與此有關的散列)
我嘗試使用.delete(key)
和似乎沒有工作。
> item
=> "1479585381276"
> profile_params[:videos_attributes].delete(item)
=> <ActionController::Parameters {"vimeo_url"=>"https://www.youtube.com/watch?v=Qas34Pce-k", "official"=>"false", "_destroy"=>"false"} permitted: true>
> profile_params[:videos_attributes]
=> <ActionController::Parameters {"1479585381276"=><ActionController::Parameters {"vimeo_url"=>"https://www.youtube.com/watch?v=Qas34Pce-k", "official"=>"false", "_destroy"=>"false"} permitted: true>, "1479585385202"=><ActionController::Parameters {"vimeo_url"=>"https://vimeo.com/some-awesome-video", "official"=>"true", "_destroy"=>"false"} permitted: true>} permitted: true>
我想這樣做的原因是因爲當我評價參數,它仍然被傳遞到@profile.update(profile_params)
我Profiles#Update
的後半段,並創建一個記錄,我不希望它來創建。
所以我想要做的就是成功處理後,將其刪除/彈出/將其從profile_params[:videos_attributes]
散列中刪除。
這是100%的錢。非常感謝! – marcamillion