Ruby China
  • 社区
  • 招聘
  • Wiki
  • 酷站
  • Gems
  • 注册
  • 登录
@piecehealth
会员
第 6826 位会员 / 2013-04-23

[email protected]
GOAT
上海
5 篇帖子 / 291 条回帖
14 关注者
6 正在关注
40 收藏
未设置 GitHub 信息。
  • 概况
  • 话题
  • 回帖
  • 收藏
  • 正在关注
  • 关注者
  • Ruby Array#index 方法如何从某个位置开始查找 at 2016年02月27日

    arr[i..-1].index x

  • 点击 button 运行某 Ruby 方法 at 2016年02月03日
    1. 点击 button 发一个请求
    2. controller 处理请求,执行 @uptime = `uptime`,并 render view
    3. view 展示@uptime
    4. (可选) 请求换成 ajax 方式
    5. 多看一些 web 开发基础知识,不限于 rails
  • 现在想做一个聊天室的页面,但是没有思路,请教下大家 at 2016年01月14日

    #14 楼 @ghn645568344 https://github.com/rails/rails gem install rails --pre

  • 现在想做一个聊天室的页面,但是没有思路,请教下大家 at 2016年01月13日

    https://ruby-china.org/topics/28480

  • Rails 如何实现 二维表的显示及导出 at 2016年01月11日
    select
      设备名称,
      count(1) 合计,
      sum(case 所在地 when '店1' then 1 else 0 end) 店1,
      sum(case 所在地 when '店2' then 1 else 0 end) 店2,
      sum(case 所在地 when '店3' then 1 else 0 end) 店3,
      sum(case 所在地 when '店4' then 1 else 0 end) 店4,
      sum(case 所在地 when '店5' then 1 else 0 end) 店5
    from
      基础表
    group by
      设备名称;
    
  • Ruby 2.3 new feature 之一: 多行字符串更优美的写法 at 2015年12月23日

    Ruby A PROGRAMMER'S BEST FRIEND

  • 分享自己项目的进程,1年 了,该来向社区做个汇报了。 at 2015年12月14日

    看到这里还没笑,到底哪里是笑话了?

  • 测试的主要作用和必要体现在哪? at 2015年12月12日

    前几天要改一个别人写的老方法,这个方法的上下文又比较多,全理清臣妾做不到,就是看测试代码理解这个方法的意图,通过跑测试确保我的改动没影响到别的功能。

    所以我认为测试用处一是确保你的代码符合整个项目的预期,二是给后来的维护者说明你要解决的问题(因为文档咱们是不会好好写的,哈哈。文档没有动力维护,但是为了跑通测试你会主动维护测试的)

  • 关于 block (一) at 2015年12月10日

    实现上面的功能我会这么写

    def test(your_proc, behaviors = {})
      user_ids = User.where("name like '%z%'").pluck(:id)
      User.where(id: user_ids).find_each{|x| x.update_columns(name: "name_#{x.id}")}
      your_proc.call()
      behaviors.each do |operate, behavior|
        case operate
        when :x
          behavior.call user_ids
        when :y
          behavior.call []
        else
          # default behavior
        end
      end
      puts 'done'
      true
    end
    
    # 调用
    result = test(
      ->{ puts 'this is ->' }, 
      {
        x: lambda {|user_ids| Rails.logger.debug "user_ids: #{user_ids}"}, 
        y: lambda {}
      }
    )
    

    方法作者只需要提供支持的 behaviors 说明就行了,如果你那种实现,你怎么给调用者写文档……

  • 关于 block (一) at 2015年12月10日

    这样耦合太紧了吧,我要是调用者我会疯的

  • 在 Windows 环境下安装 unicorn gem 包出错 at 2015年11月23日

    windows 下还是用 vagrant 吧,不折腾

  • 如何研究一个 Gem 包? at 2015年11月17日

    看测试代码

  • 能不用 map 修改 hash 的 key? at 2015年11月12日

    data.map {|h| {name: h[:label], value: h[:data]}}

  • How Minitest works at 2015年11月03日

    问题1:Minitest::Test 是如何收集所有的测试类? 也可以用 ObjectSpace扫一下所有Minitest::Test子类达到效果 😉

  • padrino 开发环境的局域网访问 at 2015年10月01日

    启动时加上-e production试一下

  • Rails 中的 blank? and present? at 2015年09月17日

    看了一下 rails 的实现,更简单……

    # File activesupport/lib/active_support/core_ext/object/blank.rb, line 15
    def blank?
      respond_to?(:empty?) ? !!empty? : !self
    end
    
  • Rails 中的 blank? and present? at 2015年09月17日
    [1] pry(main)> def blank? obj
    [1] pry(main)*   !obj || (obj.empty? rescue false)
    [1] pry(main)* end
    => :blank?
    [2] pry(main)> blank? nil
    => true
    [3] pry(main)> blank? false
    => true
    [4] pry(main)> blank? ""
    => true
    [5] pry(main)> blank?({})
    => true
    [6] pry(main)> blank? 0
    => false
    [7] pry(main)> blank? 0.0
    => false
    

    这样可以不

  • 如何在 controller 中捕获 SyntaxError 异常 at 2015年09月10日

    语法错误是 Ruby 没法解析你的脚本,还没到抛异常呢。

  • 关于 Rails 源码中的 Rails::Initializable::Initializer#bind 方法,有个疑问请教 at 2015年08月02日

    我猜是因为 每次bind生成一个新的对象可以做到一套Initializer配置可以被bind多次,供不同的context复用。

    不过只看railties下的代码也没有发现某个Initializer被bind多次……

  • 关于方法调用的问题 at 2015年07月24日

    #4 楼 @cbdfocus

    module My_a
      def self.dosth
        puts "This is A do sth."
      end
    end
    
    class My
      def doit
        My_a::dosth
      end
    end
    
    obj0 = My.new
    obj0.doit
    
  • 关于方法调用的问题 at 2015年07月24日

    也可用prepend

    class My
      prepend My_a
      include My_b
    
      def doit
        dosth
    
      end
    end
    
    obj0 = My.new
    obj0.doit       # This is A do sth.
    
  • 字符串数组之间的转换 at 2015年02月02日

    str.scan('\w')或者str.scan(/(?<=').*(?=')/)

  • Private Class Method at 2015年01月08日

    #3 楼 @flypiggys attr_accessor 就是一个类的私有方法。

  • Private Class Method at 2015年01月08日

    也可以

    class Project
      def find(id)
      end
    
      def self.user
      end
    
      private_class_method :user
    end
    
  • 求多个相同大小的矩阵对应位置的最大值 at 2015年01月08日
    a = [
      [2, 3, 4, 5],
      [3, 4, 5 ,6],
      [1, 2, 3, 2],
      [8, 9, 5, 3]
    ]
    
    b = [
      [1, 1, 1, 5],
      [4, 5, 2, 3],
      [6, 5, 6, 3],
      [7, 4, 9, 7]
    ]
    
    c = a.map.with_index do |aa, i|
      aa.map.with_index do |aaa, j|
        aaa > b[i][j] ? aaa : b[i][j]
      end
    end
    
  • ABC.new (:title=>"title",:flag=>"flag") 用 symbol 做参数是怎么实现的? at 2015年01月07日

    就是传了一个 hash

    class ABC
      def initialize params
        p params
      end
    end
    
  • sort 方法里 block 的 a 和 b,两个参数是指什么? at 2015年01月03日

    http://www.ruby-doc.org/core-2.2.0/Array.html#method-i-sort

    Comparisons for the sort will be done using the <=> operator or using an optional code block.

    The block must implement a comparison between a and b, and return -1, when a follows b, 0 when a and b are equivalent, or +1 if b follows a.

  • 一道 ruby 笔试题 at 2014年12月23日

    #24 楼 @rocLv

    class A
      def initialize
        @a
        @b = 1
      end
    end
    
    A.new.instance_variables # [:@b]
    
    class B
      @a
      @b = 1
    end
    
    B.instance_variables # [:@b]
    
  • 上一页
  • 1
  • 2
  • …
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 下一页
关于 / RubyConf / Ruby 镜像 / RubyGems 镜像 / 活跃会员 / 组织 / API / 贡献者
由众多爱好者共同维护的 Ruby 中文社区,本站使用 Homeland 构建,并采用 Docker 部署。
服务器由 赞助 CDN 由 赞助
iOS 客户端 / Android 客户端 简体中文 / English