相关疑难解决方法(0)

你在Ruby中称为 - >运算符是什么?

  1. 您如何称呼->运营商,如下所示?

    ->(...) do
      ...
    end
    
    Run Code Online (Sandbox Code Playgroud)
  2. 这些片段不是等效的吗?

    succ = ->(x) {x + 1}
    succ = lambda {|x| x + 1}
    
    Run Code Online (Sandbox Code Playgroud)

ruby syntax

197
推荐指数
4
解决办法
5万
查看次数

如何在Ruby中创建可重用的块/ proc/lambda?

我想创建一个过滤器,并能够将其应用于数组或散列.例如:

def isodd(i)
  i % 2 == 1
end
Run Code Online (Sandbox Code Playgroud)

我希望能够像这样使用它:

x = [1,2,3,4]
puts x.select(isodd)
x.delete_if(isodd)
puts x
Run Code Online (Sandbox Code Playgroud)

这似乎应该是直截了当的,但我无法弄清楚我需要做什么才能让它发挥作用.

ruby

49
推荐指数
3
解决办法
2万
查看次数

Ruby/Rails中的 - >(破折号大于)运算符是什么

我刚刚在Rails应用程序中遇到以下代码行:

scope :for_uid, ->(external_id) { where(external_id: external_id) }
Run Code Online (Sandbox Code Playgroud)

什么是->运营商意味着什么?这对谷歌来说很难.

ruby ruby-on-rails

8
推荐指数
3
解决办法
2336
查看次数

什么是Ruby中的 - >(){}?

我刚刚在Ruby/Rails应用程序中看到过这个表达式:

def method(a, b = nil, &c)
   c ||= ->(v) { v }
Run Code Online (Sandbox Code Playgroud)

我理解第一部分,但不是->() { ... }语法.这是什么意思?

变量名称已更改为简洁.我试过搜索,但非字母数字字符显然是SEO的噩梦.

ruby ruby-on-rails

6
推荐指数
1
解决办法
305
查看次数

什么 - >在Ruby中意味着什么

我在狂欢商业中看到了这一点.

go_to_state :confirm, if: ->(order) { order.confirmation_required? }
Run Code Online (Sandbox Code Playgroud)

那么这个符号会做什么?

ruby ruby-on-rails

4
推荐指数
1
解决办法
259
查看次数

意思是 - > Ruby中的简写

我在浏览Friendly_id宝石的代码库,我发现线与分配如下:

@defaults ||= ->(config) {config.use :reserved}
Run Code Online (Sandbox Code Playgroud)

我的问题是:

  1. 我该如何解释这一行代码?
  2. 它究竟->做了什么,它意味着什么?
  3. 有没有关于它的文章,如何使用它?(官方Ruby文档会很好,我还没找到)

谢谢您的帮助

ruby ruby-on-rails friendly-id

2
推荐指数
1
解决办法
147
查看次数

什么是红宝石符号 - >做什么?

options_from_collection_for_select(['all'], 'to_s',  -> (input) { t("admin.mystring") })
Run Code Online (Sandbox Code Playgroud)

我在Haml文件中找到了这行代码.有人可以解释一下该怎么->(input)办?什么时候->在红宝石中使用这个符号?

ruby haml

1
推荐指数
1
解决办法
147
查看次数

标签 统计

ruby ×7

ruby-on-rails ×4

friendly-id ×1

haml ×1

syntax ×1