do while 不符合人类阅读习惯,请使用while 1; break if; end
[1,2,3].map(&1.method(:+))
楼主又来抬杠了
那你估计没在 sonicpi 里用过任何元编程技巧...
他的 liveload 机制会让你的类似 define method 之类的东西用不了,作用域也是有问题的,反正我之前用的时候是不行的,如果没有大量代码生成加持,你用这个做音序器不如任何一个合成器/编曲软件
束之高阁就对了,因为这只是个披着 ruby 外衣的东西,并不是 ruby...
学 idris 吧,haskell 下一代,大概是现在最先进的 fp 语言
哦没看到你已经在编译了,如果编译出问题我也不知道怎么弄了,试多几个编译器吧。。其实 1.9 语法对 2.0 变化不大,也就少了个 keyword arguments,建议别折腾了
支持一下,不过我没 windows,建议源码发 github 看看
rubyinstaller 装不了的,2.0 开始就不行,印象中是 gcc 依赖了新版本的 dll,你如果重新用 xp 下的编译器进行编译就可以
因为跨公司去搞这些是很麻烦的,rails 应该是有全职开发者的,如果不能进入内部讨论的圈子,你做个 pr 三个月才合/不合也是颇为正常的事
变量不可变只是假象,你进程 id 指向的那个东西不还是可变的
我并没有把 id 放到 url 中,account 只是个虚拟的单数资源,本体是 current_user。
既然你已经意识到了资源取用是要先鉴权的,那么假如你用/addresses/1 取用一个地址,而地址根本没有和 user 关联,你要怎么鉴权?head 404 unless @address.credit_card.user_id == current_user.id
?如果是多对多关联你是不是还要把所有查出来然后对集合 find?如果业务逻辑需要操作多对多关联,你要怎么确定操作哪个?
知道每一级资源的 id,在链条上有多对多关联的时候是必须的,在仅有一对多关联的时候是推荐的。
嵌套资源的依赖是一层层的,你不可能直接拉到最后的,举个例子:
#你永远应该
current_user.credit_cards.find(params[:id])
#而不应该
CreditCard.find(params[:id])
#假如你的url是 /account/credit_cards/1/addresses,你应该这么取用
current_user.credit_cards.find(params[:credit_card_id]).addresses
嵌套资源一般而言是每层都要取出来的,因为你拿到一个 address 没有办法知道他是不是 current_user 拥有的,除非把 credit_card 也查出来。
block 和缩进有关,事实上你写 promise 写得多,就会发现一个函数拿两个匿名函数是很扯的。所以 ruby 里干脆只让方法带一个匿名函数,就是 block。
要骚操作完全可以
break if str[v.tap{v += 1}] != 3
当然 confuse 的程度是一样的
列表解构是有的,倒是 hash 解构没有
已收,谢谢。
联系方式是?我的 Order ID 是 289645。
我对介词“在”的理解有问题?
“在这周”指的是这周内,而不是这周前。同理,“在大会开始前一个星期”指1.week.before(beginning_of_conference)...beginning_of_conference
。
现在就是开会前一个星期,为什么不允许退票?
挺好的,其实这个比 1.8 那个好不少,1.8 的块就很迷,函数签名就很合理
我是用 workbench 自带的格式化。。懒得折腾
nmatrix 印象中老是遇到 segfault。。
其实还有个 rubynumo https://github.com/ruby-numo ,不过这个矩阵库实际用的时候跑得很慢,可能是我的用法不对
开发停止两年了🌚
这就叫闭包作用域,不是必要最好不要生造名词……
不如看 whitequark 的 parser 或者 seattlerb 的 ruby_parser,ripper 的比较低级
其实就 https://github.com/leandromoreira/redlock-rb 就好,比数据库的锁灵活
问题是你的 picture 是怎么来的。。Picture.all.map{|x| x.imageable}
?这样也是不会带 published 的啊,还是不清楚要怎么重现