• 了解过,然后放弃了。 因为:那些什么什么鬼的 0day,端口,postgresql,都不清楚的情况下,只知道 ruby 并没什么用。

  • 官方的flatten!,妥妥滴。

    为什么要用递归呢,ruby 的递归耗 cpu 的,能不用就不用。就性能来说,递归更适合用那些静态语言

      ~ pry
    [1] pry(main)> a = [1, [2], [1, [2, [3]]], 'l', 'dota']
    => [1, [2], [1, [2, [3]]], "l", "dota"]
    [2] pry(main)> i = 1
    => 1
    [3] pry(main)> while a.flatten!(1)
    [3] pry(main)*   i += 1
    [3] pry(main)* end
    => nil
    [4] pry(main)> puts i
    4
    => nil
    [5] pry(main)> a
    => [1, 2, 1, 2, 3, "l", "dota"]
    [6] pry(main)> b = %w( i love lol, dota go die)
    => ["i", "love", "lol,", "dota", "go", "die"]
    [7] pry(main)> j = 1
    => 1
    [8] pry(main)> while b.flatten!(1)
    [8] pry(main)*   j += 1
    [8] pry(main)* end
    => nil
    [9] pry(main)> puts j
    1
    => nil
    [10] pry(main)>
    
    
  • #4 楼 @qinfanpeng 简单说是蛋和鸡的问题。

    我在另外一个 class 里面用一个常量调用了这个 scope。A_CONSTANT_VAR = SomeModel.lol_scop。然后 Rails 初始化的时候,会预加载所有的常量。然后,SomeModel这个 model 的 migration 只在自己的数据库有,小伙伴的数据库里面是没有这个表的。

    所有就造成了,只有当时写这个 model 的人才能正常使用。

    其他人,即使代码是一模一样的,也是没有办法启动 rails 的。

  • :plus1: