0
두 개의 데이터 배열이 양식에서 전송됩니다. 하나는 transloaded이고 다른 하나는 모델의 실제 양식입니다. [: video_encoded] [: url]을 가져 와서 [: video] [: flash_url]에 저장해야합니다.합치는 합격 된 매개 변수
[: transload] [: results] [...]에 액세스하려고하면 전달 된 인수이거나 transloaded입니다. : video_encode] 나는 아무 것도 얻지 못한다. :results != "results"
또는 다른 말로하면 : 당신의 해시 유형 String
의 키가 있지만 유형 Symbol
로 액세스하는 다음
print params[:transload]
{
"assembly_id":"d59b4293b3d79d2ccd1948c02421c6a6",
"status":"success",
"uploads":{
"video":{
"name":"bbc_one.mp4",
"mime":"video/mp4",
"ext":"mp4",
"size":601104,
"meta":{
"width":720,
"height":404,
"video_fps":25,
"video_bitrate":null,
"video_format":"avc1",
"video_codec":"ffh264",
"audio_bitrate":"128k",
"audio_codec":"faad",
"duration":3.07,
"device_vendor":null,
"device_name":null,
"device_software":null,
"latitude":null,
"longitude":null
},
"url":"http://tmp.transloadit.com/"
}
},
"results":{
"video_encode":{
"name":"bbc_one.flv",
"mime":"video/x-flv",
"steps":["encode","export"],
"ext":"flv",
"size":388317,
"meta":{
"width":480,
"height":320,
"video_fps":25,
"video_bitrate":"512k",
"video_format":"FLV1",
"video_codec":"ffflv",
"audio_bitrate":"64k",
"audio_codec":"mp3",
"duration":3.11,
"device_vendor":null,
"device_name":null,
"device_software":null,
"latitude":null,
"longitude":null
},
"url":"http://s3.transloadit.com/b7deac9c96af6c745e914e25d0350baa/7a/2b09e822265ac2328789b40dcc02ae/bbc_one.flv"
},
"video_encode_iphone":{
"name":"bbc_one.qt",
"mime":"video/quicktime",
"steps":["encode_iphone","export"],
"ext":"qt",
"size":218236,
"meta":{
"width":480,
"height":320,
"video_fps":25,
"video_bitrate":null,
"video_format":"avc1",
"video_codec":"ffh264",
"audio_bitrate":"128k",
"audio_codec":"faad",
"duration":3.04,
"device_vendor":null,
"device_name":null,
"device_software":null,
"latitude":null,
"longitude":null
},
"url":"http://s3.transloadit.com/31/58bcc80d5345e52a42c9773125e8f0/bbc_one.qt"
}
}
}
내가
video_links = {
:flash_url => params[:transload][:results][:video_encode][:url],
:mp4_url => params[:transload][:results][:video_encode_iphone][:url]
}
params[:video].merge(video_links)
나는 그 결과가 json이라고 생각하기 때문에, 나는 몰랐다. params [: transload] = ActiveSupport :: JSON.decode (params [: transload]) 해결 된 내용 –
도움이되었던 답변을 수락해야합니다. – nathanvda
고맙습니다. nathanvda, 전 im : stackoverflow에 새로운 :) –