• Will Ruby kill off Python? at 2019年04月11日

    老外标题党,结尾都说自己都不信,转过来再断章取义……

  • 能招这么多年,起码说明人家业务稳中见长 👍

  • Kernel.autoload

  • 实例变量的一个坑 at 2018年12月17日

    不是实例变量的坑,是def打开一个跟上下文不联通的作用域,不管是不是在singleton_class里,要理解ruby的作用域,代码应该是

    class  C
      @c = 1
      class << C
        def  f
          @c
        end
      end
    end
    
  • strong parameters是让你设一个 white list allow list,让你标记传到action里面的参数哪个是可以接受的,并不是用来取参数的。

    试一下

    def shipping_charge_temp_params
        params.permit(:name, :shipping_charge_method_id,
                      shipping_methods: %i[name
                                           base_items base_price
                                           increment_items_unit
                                           increment_items_unit_price])
    end
    
  • 又看了一眼,教程的Gemfile里有一个minitest的plugin minitest-reporters,minitest报错堆栈里就有这个gem

    这个教程好害人,要不是你贴的信息全,没人知道为什么。

  • 应该是教程的Gemfile有问题,导致minitest fail的时候测试框架本身出错了,没法继续。

    简单fix就是用rails new之后生成的Gemfile,不要用教程的Gemfile。

    你要想深究原因,可以/home/sws/.rvm/gems/ruby-2.4.4/gems/railties-5.1.2/lib/rails/test_unit/reporter.rb设个断点自己debug一下,鉴于你是新手,还是不要折腾了。

  • 你跑测试的输出贴全了看一下,最后会有一个结果的,4个test肯定都会跑

  • 我没看过那个教程,如果完全按照你描述的步骤,这个测试失败是符合期望的,因为你现在只能响应static_pages_home_url, static_pages_help_url

    教程应该是教你测试驱动开发,先写测试,再补全实现的代码。你看下面是不是让你加about页面

  • 看一下你的config/routes.rb文件