我嘗試像這樣使用郵遞員在 url 中將引數作為哈希傳遞
http://localhost:3000/api/v1/bill?album=3&song=4&song=7&album=6
我使用此代碼獲取引數
def param_hash
params.permit(:album, :song)
end
并列印此值param_hash.to_h
這是我想要的值{"album"=3, "song"=>4, "album"=>6, "song"=>7} 但實際上這就是我得到的{"album"=>6, " song"=>7},最后只有 1 個哈希值。
無論如何要在url中獲取所有哈希值嗎?
uj5u.com熱心網友回復:
def param_hash
params.permit(album: [], song: [])
end
http://localhost:3000/api/v1/bill?album[]=3&song[]=4&song[]=7&album[]=6
根據https://github.com/rails/strong_parameters
允許的標量型別是 String、Symbol、NilClass、Numeric、TrueClass、FalseClass、Date、Time、DateTime、StringIO、IO、ActionDispatch::Http::UploadedFile 和 Rack::Test::UploadedFile。
要宣告 params 中的值必須是允許的標量值陣列,請將鍵映射到一個空陣列:
params.permit(:id => [])
uj5u.com熱心網友回復:
http://localhost:3000/api/v1/bill?data={album: 3,song: 4,song: 7,album: 6 }
使用上述邏輯并允許“資料”物件。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/436763.html
