和文档说的不一样才叫 bug
$ ri DateTime.===
...
Returns true if they are the same day.
可能是 rubygems 下载没成功但 rvm 以为下好了,
删除 /Users/tuliang/.rvm/src/rubygems-1.8.24/
然后下一个 http://production.cf.rubygems.org/rubygems/rubygems-1.8.24.zip
解压成 /Users/tuliang/.rvm/src/rubygems-1.8.24/
再继续安装
\ruby china
可以直跳
@ 克里斯汀那 ruby -v
一样么 ?
装最新的 xcode 就可以了,不过装完还得装 command line tools
@bhuztez 杭州 ruby tuesday 来讲下 prolog?
#57 楼 @yedingding cool! 刚发现 gravatar 也换用 "aloha" 做问候语了
断言不匹配 意思就是如果不不匹配就出错,也就是匹配就出错
word.force_encoding 'utf-8'
?
virtualbox 或者 vmware secureCRT 或者 console2?
以前用 console2 输入不了中文,不知道现在好了没
遵循爱护键盘原则就可以了...
就用这个了!
@igordonshaw
其实 jquery 大部分代码都是兼容旧浏览器用的 sizzle 引擎,each
的元素顺序很坑爹,map
也删掉了,R 是collection proxyobject proxy 而不是 dom proxy
script/rails c -- -r/path/to/your/callback
#30 楼 @jasl irb 不是什么魔法,它也是 ruby 实现的,最简单的 irb 就像这样:
# simple irb
prompt = '[0] '
binding = Object.new.send :binding
loop do
print prompt
prompt.succ!
begin
res = binding.eval gets
rescue SystemExit
exit
rescue Exception
puts $!.message
puts $!.backtrace
end
puts "=> #{res.inspect}"
end
irb 里还有各种各样的功能,例如按上箭头可以把以前输入过的东西重现出来,那就需要引入 readline, 或者色彩高亮显示方法源代码,那就是 pry 里用 coderay 着色的处理。而这些功能要调用方法,或者要触发 method_missing
都不奇怪,irb 还在不断改进中,1.8 和 1.9 的实现自然很不相同,引入了不同的库,行为也会不一样...
真的要用 oracle ? 里面有 30 几年没修好的 bug 诶:null == ''
migration 里写了 string 吧?
t.text :content
或者报的是另一个字段的错...
#8 楼 @evil850209 既然业务都交给 java 服务了,就和 activerecord 没关系了吧?
到需要密码的地方:
require 'io/console'
password = STDIN.noecho{ gets.chomp }
然后通过 net/ssh
用这个 password
登录
貌似我理解错了,lz 要的是登录后到命令行交互的界面?
可能连 ruby 都用不着,用 key 登录,配置 ~/.ssh/config, 例如
Host myhost
HostName 1.2.3.4
User app
IdentityFile ~/my/private/key.pem
然后命令行里 ssh myhost
就登录了
目测慢的原因在于代码太挫...
如果仅仅是连 ftp 的话,用 ruby 的 net/ftp 库就好了
第三方软件开源的话基本都有命令行调用接口,windows 的话基本都有 ole / com 接口,ruby 里调用不难啊
突然想到可以靠面试报销掉过年回家的机票...
<<
是 append, "a" << "b"
结果就是 "ab"
rand()
是取 0 到 1 之间的随机数,这种写法就是以 rate 的几率来随机 flip 一位的,和模拟基因变异的做法差不多...
#2 楼 @supremewnp 你这段程式的运算过程就和转换 2 进制是一样的,不过是逆序后的转换
"0011111000000000".reverse.to_i 2 #=> 124
其实就是求了二进制数 0000000001111100
不是进程,应该是 32 位机器上的 lambda, 后面这个是 lambda 对象的地址,不能记录多个数据
这个数据和用 object_id 算的地址相同:
[1] pry(main)> l=->{}
=> #<Proc:0x007fe47494d008@(pry):1 (lambda)>
[2] pry(main)> (l.object_id<<1).to_s 16
=> "7fe47494d008"
附 object_id 的计算规则
/*
* 32-bit VALUE space
* MSB ------------------------ LSB
* false 00000000000000000000000000000000
* true 00000000000000000000000000000010
* nil 00000000000000000000000000000100
* undef 00000000000000000000000000000110
* symbol ssssssssssssssssssssssss00001110
* object oooooooooooooooooooooooooooooo00 = 0 (mod sizeof(RVALUE))
* fixnum fffffffffffffffffffffffffffffff1
*
* object_id space
* LSB
* false 00000000000000000000000000000000
* true 00000000000000000000000000000010
* nil 00000000000000000000000000000100
* undef 00000000000000000000000000000110
* symbol 000SSSSSSSSSSSSSSSSSSSSSSSSSSS0 S...S % A = 4 (S...S = s...
* object oooooooooooooooooooooooooooooo0 o...o % A = 0
* fixnum fffffffffffffffffffffffffffffff1 bignum if required
*
* where A = sizeof(RVALUE)/4
*
* sizeof(RVALUE) is
* 20 if 32-bit, double is 4-byte aligned
* 24 if 32-bit, double is 8-byte aligned
* 40 if 64-bit
*/
先从 bitstring 截取一段子字符串:截取的范围是从下标为 off (16) 的字符起,到下标为 off + bits_per_param (32) 的字符前
16...32 其实就是 bitstring 的后半段:"0000000001111100"
然后再 reverse, 结果就是 "0011111000000000" 了