轨。 postgres不能将Array转换为字符串

时间:2014-05-10 12:49:07

标签: mysql ruby-on-rails postgresql youtube

我正在使用postgres生成无法将数组转换为字符串错误,而我在本地使用mysql。在创建某些视频时,我只会在制作时遇到错误。

在下面的代码中,videoid只是我从youtube获取的youtube视频的内容

videoid = Video.parse_youtube(params[:video][:link]) if !params[:video].blank? and !params[:video][:link].blank?
              if videoid
            hash = video_info(videoid)
            if !hash["errors"]
              embed_code = "<iframe width=\"560\" height=\"315\" src=\"#{hash['embed']}\" frameborder=\"0\" allowfullscreen></iframe>"
              @video = Video.new(:name=>hash["name"] , :embed_code=> embed_code, :link=> params[:video][:link], :youtube_id=> videoid, :current_views => hash["current_views"], :initial_views => hash["current_views"],:uploaded_date => hash["uploaded"],:category => hash["category"])
            else
              @video = Video.new
            end
          else
            @video = Video.new
          end

我没有得到问题所在..它在mysql中工作,但它不适用于postgres。

1 个答案:

答案 0 :(得分:0)

如果您尝试在数据库中输入字符串变量的任何变量实际上是数组,或者hash [“embed”]是一个数组,那么您将在此行中收到错误。

我个人建议输出你在“if!hash [”errors“]'行之后插入的每个变量的类。例如,'puts hash [“embeds”] .class'将打印出类,如果是Array,则可能是您的错误。

你应该能够很容易地看到错误。