为什么我的阵列变成了一个字符串?

时间:2017-04-05 18:06:38

标签: ruby-on-rails ruby

为什么我的数组会变成字符串?

我宣布了一个阵列并试图继续推进它:

iFrame

减去 url = params[:img_url] job = Job.find(params[:job_id]) puts "addphoto==============================================b4" puts "job.photos:#{job.photos}-#{job.photos.instance_of? Array}" puts "=====================================================" job.photos = Array.new if (!job.photos) puts "addphoto==============================================aft" puts "job.photos:#{job.photos}-#{job.photos.instance_of? Array}" puts "=====================================================" job.photos.push(url) 我正在做的就是创建一个新的空数组,如果还没有,那么我就推。

我的日志说:

puts

为什么我新创建的数组不是数组? 我无法调试它,因为它只发生在我部署的服务器上。

完全相同的代码会在我的本地服务器中抛出此内容:

2017-04-05T17:51:41.034394+00:00 app[web.1]: addphoto==============================================b4
2017-04-05T17:51:41.034467+00:00 app[web.1]: job.photos:-false
2017-04-05T17:51:41.034490+00:00 app[web.1]: =====================================================
2017-04-05T17:51:41.034687+00:00 app[web.1]: addphoto==============================================aft
2017-04-05T17:51:41.034713+00:00 app[web.1]: job.photos:[]-false
2017-04-05T17:51:41.034715+00:00 app[web.1]: =====================================================
2017-04-05T17:51:41.035141+00:00 app[web.1]: Completed 500 Internal Server Error in 15ms (ActiveRecord: 6.7ms)
2017-04-05T17:51:41.036043+00:00 app[web.1]: 10 TID-ox2i47d2w FATAL: 
2017-04-05T17:51:41.036045+00:00 app[web.1]: NoMethodError (undefined method `push' for "[]":String):
2017-04-05T17:51:41.036046+00:00 app[web.1]:   app/controllers/mobilevv/job_controller.rb:266:in `add_photo'

发生了什么事?

0 个答案:

没有答案