Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 对象id和youtube视频id与youtube_it gem相同_Ruby On Rails_Ruby_Ruby On Rails 3_Youtube_Ruby On Rails 3.2 - Fatal编程技术网

Ruby on rails 对象id和youtube视频id与youtube_it gem相同

Ruby on rails 对象id和youtube视频id与youtube_it gem相同,ruby-on-rails,ruby,ruby-on-rails-3,youtube,ruby-on-rails-3.2,Ruby On Rails,Ruby,Ruby On Rails 3,Youtube,Ruby On Rails 3.2,我正在使用此gem从我的应用程序将视频上载到youtube: 这是我的令牌请求: {:url=>"http://uploads.gdata.youtube.com/action/FormDataUpload/AIwbFATUMuFsv2GfJp4jkDXk3mkLNF6WklzOSoX05p96enTOMAj6DlnXpe1Rav-ZxZwNRrGC_7-8kStHFA2nisMb09CjdJgNBA?nexturl=http://localhost:3000/es/cvs/5152d3

我正在使用此gem从我的应用程序将视频上载到youtube:

这是我的令牌请求:

{:url=>"http://uploads.gdata.youtube.com/action/FormDataUpload/AIwbFATUMuFsv2GfJp4jkDXk3mkLNF6WklzOSoX05p96enTOMAj6DlnXpe1Rav-ZxZwNRrGC_7-8kStHFA2nisMb09CjdJgNBA?nexturl=http://localhost:3000/es/cvs/5152d31aa61654e56b000001/save_video?cv_id=5152d31aa61654e56b000001", :token=>"AIwbFAQv5ZE9-TBWTNNJi4Ng6_tvoLaxW0JVDCU7TE0rxiT_2CUFw-eZR5kuZr_0tkWBTtpWVu4I-OcfMsfnusqHYQNwq1EsVaCuGDnbqV07OwngagOQYXfzgnxwNzDJ5H1ESkRWKjtOVGGP1-ETDhDdB45-ZyYxlVQVKbitcrONJz1NKI4adqhVrPhmTJaKyjysb5mtWlNYoA1DGesmEwg6UG4y9Nwg1ekVYpi_fB8lvFE5CkchG1AhDkei6yq0wQSyxJVBbF3mhgFuh8ZSRvCuxRvKH7tTmx0ew3P9dmv61S5MQHs5_cwY-pGq4rce4xjVKBB68j5GoT6RaJxKbhLXrV6_pQwUACG40tTWxWhVHLZDneAlzDwnveFBJRE41xCI0G_sbkIJ5703Y1dLorXAGcjNxMFe3-MJ-zbPXWpyZeK7TD2s0lnbc6cdOPje8DGFAFmc6P_7TD6RzTepoBkOOhAokGKpAYkfxacBD77aaExHCzFHde-9jFNZQ2QelPL2YXwyMA8lcX81c3zItut1NKp1soXxuGDNkBPOpu2OzYuGTSBS9PPyvFfqUMHg5X2KDADn2uYNU25nDMIKJlG4VeCfntEbr1J0m1HpcFR3_8LK9hlehuHjqmY_7e8lIbSRJHmEEhw2bQG1aIh7gClZDVVfeJnA52r8Sb_7O4yWtkbii6
当我上传视频时,我在日志中得到以下参数:

{"cv_id"=>"5152d31aa61654e56b000001", "status"=>"200", "id"=>"5152d31aa61654e56b000001", "action"=>"save_video", "controller"=>"cvs", "locale"=>"es"}
cv_idid都是相同的id,这是不正确的

但是在url中,我可以看到youtube视频id,这是url:

http://localhost:3000/es/cvs/5152d31aa61654e56b000001/save_video?cv_id=5152d31aa61654e56b000001&status=200&id=GJUIN83LrdQ
正确的youtube视频id是GJUIN83LrdQ

以下是我使用此资源的路线:

Myapp::Application.routes.draw do
  #
  #
  resources :cvs do
   member do
    get :upload, :save_video
   end
  end
  #
  #
end
我使用的是强参数gem,我不知道这是否是问题所在

我如何解决这个问题


谢谢大家!

您的路由与您希望看到的数据不匹配。路由在路径中指定一个
:id
参数,该参数优先于查询字符串中的
id
参数。由于路径中的id和查询字符串中的cv_id相同(5152D31AA6654E56B000001),因此您可以看到这两个参数键的值

根据您的选择,考虑将ID从您提供的查询字符串中删去<代码> NEXTURL < /代码>,并将其放置在<代码>的路径PARM中:ID :

http://localhost:3000/es/cvs/GJUIN83LrdQ/save_video?cv_id=5152d31aa61654e56b000001
或者,重命名路由,使其指定
:cv\u id
,并从查询字符串中省略
cv\u id

# route:
(/:locale)/cvs/:cv_id/save_video(.:format) cvs#save_video

http://localhost:3000/es/cvs/5152d31aa61654e56b000001/save_video?id=GJUIN83LrdQ

/es/cvs/5152D31A61654E56B00001/save_video
的路由定义是什么?我猜该路由与youtube id段路径匹配为:id,如
/es/cvs/:id/save_video
中的路径,它将在查询字符串中删除id参数。这是
save_video
操作
cvs
控制器:
(/:locale)/cvs/:id/save_video(:format)的路由cvs#save_video
我在问题中添加了路线。非常感谢。我已经解决了
参考资料:cvs do new do get:upload,:save_video end
的问题,再次非常感谢!