gpt4 book ai didi

ruby-on-rails - 解释 Ruby on Rails 中的迭代器语法

转载 作者:数据小太阳 更新时间:2023-10-29 07:24:18 24 4
gpt4 key购买 nike

我开始学习 Ruby on Rails,发现自己对语法感到困惑,所以我不得不阅读一些 Ruby 语法。我从 http://www.cs.auckland.ac.nz/references/ruby/doc_bundle/Manual/man-1.4/syntax.html 学到了语法:

method_call do [`|' expr...`|'] expr...end

他们称之为迭代器。我知道一个迭代器通过一个循环运行,但我不明白我应该如何准确地阅读这个或者这个语法中发生了什么。我一直在 RoR 截屏视频中看到它,这些话很有道理,但实际上我不知道发生了什么。谁能给我解释一下?

编辑:示例

respond_to do |format|
format.json
format.xml { render :xml => @posts }
end

最佳答案

方法可以采用称为“ block ”的结构。这些是传递给方法的匿名方法。

另一种语法是:

method_call { |var| do_something(var) }

基本上,您是说对于迭代中的每个项目,将其命名为“var”并对该项目执行某些操作。该方法只是调用您传入的 block ,因为它向它“产生”项目。

这有帮助吗?

编辑:在您的示例中,您正在以一种有趣的方式使用迭代器模式...可能只将一个 format 对象传递到您的 block 中,因此您可以然后告诉它要处理哪些格式,以及当你看到它时该怎么做。

换句话说,他们正在使用该模式来创建某种 DSL,让您可以配置您要响应的内容。

关于ruby-on-rails - 解释 Ruby on Rails 中的迭代器语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3293120/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com