Ruby 中的超级关键字

2023-12-10

这段代码中的 super 是做什么用的?

def initialize options = {}, &block
  @filter = options.delete(:filter) || 1
  super
end

据我所知,这就像递归调用该函数,对吗?


不... super 调用父类的方法(如果存在)。此外,正如 @EnabrenTane 指出的,它将所有参数传递给父类方法。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Ruby 中的超级关键字 的相关文章

  • Ruby 中的任务/未来

    代表潜在延迟的异步计算并且可以订阅其完成的模式的惯用 Ruby 模拟是什么 即类似于 NET 的东西System Threading Task 或Python 3 xconcurrent futures future 请注意 这并不一定意味
  • 如何从 Ruby 程序发送邮件?

    我想从 Ruby 应用程序发送电子邮件 核心语言中是否有调用来执行此操作 或者是否有我应该使用的库 最好的方法是什么 如果你不想使用行动邮递员 http wiki rubyonrails org rails pages ActionMail
  • Heroku 部署错误

    在 Windows 环境中 尝试部署到 Heroku 时出现以下错误 C Ruby lib ruby gems 1 8 gems heroku 1 9 13 lib heroku commands base rb 32 in 没有这样的文件
  • Rails 3 在 Ruby 1.9.2 上初始化非常慢

    我使用 RVM 来管理环境 安装了 Ruby 1 9 2 p136 我认为是最新版本 和 Rails 3 创建了 gemset 并运行捆绑器 到目前为止一切正常 但 Rails 在运行命令 即生成 销毁 rake 等 时初始化速度非常慢 完
  • ruby 中的 #encode 和 #force_encoding 有什么区别?

    我真的不明白之间的区别 encode and force encoding在 Ruby 中String班级 我明白那个 kam force encoding UTF 8 将迫使 kam 是UTF 8编码 但是怎么样 encode encod
  • 用户未定义的方法 attr_accessible 错误

    我正在尝试创建某种登录 我创建了一个用户脚手架并将此代码放在我的 user rb 中 class User lt ActiveRecord Base attr accessible name password digest password
  • 在 Ruby 中创建一个空文件:相当于“touch”?

    创建一个的最佳方式是什么emptyRuby 中的文件 类似于 Unix 命令的东西 touch https en wikipedia org wiki Touch 28Unix 29 touch file txt FileUtils tou
  • Ruby/Rails 集合到集合

    我有两个表与一个连接表连接 这只是伪代码 Library Book LibraryBooks 我需要做的是 如果我有一个图书馆的 id 我想获取该图书馆拥有的所有书籍所在的所有图书馆 因此 如果我有图书馆 1 图书馆 1 中有书籍 A 和
  • RoR - Rails 中的大文件上传

    我有一个 Rails Web 应用程序 允许用户上传视频 视频存储在 NFS 安装的目录中 当前的设置适用于较小的文件 但我也需要支持大文件上传 最多 4GB 当我尝试上传 4GB 文件时 它最终会发生 但从用户体验的角度来看很糟糕 上传开
  • 使用哈希参数进行 DRY Ruby 初始化

    我发现自己经常在构造函数中使用哈希参数 尤其是在为配置或最终用户将接触到的其他 API 编写 DSL 时 我最终做的是类似以下的事情 class Example PROPERTIES name age PROPERTIES each p a
  • 为 RoR 中的每个用户创建新的 URL 路径

    如何在 Ruby on Rails 中实时创建新的 URL 路径 例如 我希望我的用户拥有 name XXX com 或 XXX com name 仅供参考 我在 Heroku 上托管代码 看看 subdomain fu 插件 https
  • 使用 ruby​​ 调整动画 GIF 图像的大小?

    我正在尝试将 GIF 图像调整为不同的尺寸 我在 ruby 中使用 RMagick 库 但对于某些 gif 图像 即使我缩小 GIF 的大小 文件大小似乎也会增加 我正在以相同的纵横比调整图像图像的大小 这是我的代码 require rma
  • ruby 认为我正在引用顶级常量,即使我指定了完整的命名空间

    在我的应用程序中我有 class User include User Foo end User Foo定义在 app models user foo rb 中 现在我正在使用一个定义自己的库Foo班级 我收到此错误 警告 User Foo
  • 嵌套 has_one 关联的强参数

    我似乎遗漏了一些明显的东西 但我无法允许嵌套的属性has one协会 控制器 def create crossword Crossword new crossword params if crossword save render show
  • Rails 3.2:用 json 序列化中的空字符串替换 null 值

    我正在使用 Rails 3 2序列化 http www simonecarletti com blog 2010 04 inside ruby on rails serializing ruby objects with json 将 ru
  • 如何在 mongoid 中使用 or 条件进行查询

    如何在 Mongoid 中使用 or 条件进行查询 这是 OR 在 mongoid 中查询 如果你想要像下面这样的查询 select from user where id 10 or name hitesh 在带有 mongoid 的 Ra
  • 处理铁路中 STI 子类路线的最佳实践

    我的 Rails 视图和控制器散布着redirect to link to and form for方法调用 有时link to and redirect to它们链接的路径是明确的 例如link to New Person new per
  • ruby rspec 不能与 simplecov 一起使用

    我安装了 simplecov gem 并添加了 require simplecov SimpleCov start 到spec helper rb文件 现在如果我在some file spec rb文件中包含spec helper rb并尝
  • ruby 字符串到哈希值的转换

    我有一个这样的字符串 str uu p xx m yy n zz m 我想知道如何将给定的字符串转换为哈希值 即我的实际要求是 有多少个值 符号之前 有m n和p 我不需要计数 我需要一个精确的值 这样输出效果会更好 m gt xx zz
  • 更改 en.yml 文件中的属性名称不起作用

    我更改了 ruby on Rails 项目中 en yml 文件中的属性名称 按钮工作正常 但字段属性并没有改变 这是我的模型 class Enr AffordableWarmth lt ActiveRecord Base self tab

随机推荐

  • 在 POST 操作中更改 ViewModel 属性

    我有这个 POST 操作 HttpPost public ActionResult GetReport GetReportModel model if ModelState IsValid return View model return
  • 在 Rails 4 中添加参考列迁移

    一个用户有很多上传 我想添加一列uploads引用的表user 迁移应该是什么样子 这是我所拥有的 我不确定是否应该使用 1 user id int or 2 user references 我什至不确定 2 是否有效 只是想以 轨道 的方
  • 仅显示 Rails ERB 中存在的记录的优雅方式

    我发现在显示有关用户的信息时 我在 ERB 视图中使用了大量重复代码 沿着 我基本上对我认为的所有内容都这样做 以避免错误 例如 可能没有所有新字段的老用户 有一个更好的方法吗 将逻辑移至助手中 def name for user user
  • 为什么我的 UILocalNotification 不播放任何声音?

    这让我抓狂 我相信我已经尝试了所有可能的方法 但我的手机仍然决定保持沉默 我只想让它玩any当我呈现本地通知时 现在会发出声音 目前 无论是UILocalNotificationDefaultSoundName我添加到应用程序包中的自定义声
  • 在没有模拟器的外部设备上安装 sqlite3

    我是一名学生 我想了解如何在 android 上使用 sqlite3 我的朋友尝试运行 Android 模拟器并开始输入命令adb e shell su 浏览模拟器存储 然后运行sqlite3 mydb db 一切都很顺利 但是每当我们尝试
  • Flutter将图像转换为base64并将base64字符串转换为图像[重复]

    这个问题在这里已经有答案了 您好 我想将图像转换为 base64 字符串 然后将其转换回图像 我就是这样做的 File pickedImage await ImagePicker pickImage source ImageSource g
  • 对 c 中的 -(--a) 与 --(-a) 感到困惑

    与混淆 and 操作员 int a 10 printf d n a valid output 9 但是 使用以下内容时会出现问题 printf d n a error invalid Why The and 运算符仅适用于左值 不适用于值
  • ifelse 没有按预期循环行

    我的数据看起来像这样 df lt read table tc lt textConnection var1 var2 var3 var4 1 1 7 NA 4 4 NA 6 2 NA 3 NA 4 4 4 4 1 3 1 1 header
  • 使用载波和雾将文件上传到 S3 时缺少要求

    我收到这个错误Missing required arguments aws access key id aws secret access key 这看起来很奇怪 因为我已经在初始化程序文件夹中添加了 Carrierwave rb 当我使用
  • 评估 Python 中动态生成的语句

    我需要动态生成 python 代码并使用 eval 函数执行它 我想做的是生成一些 导入 和 赋值 我的意思是 我需要生成这个字符串来评估它eval x x import testContextSummary import util tes
  • 如果应用程序以 CTRL_CLOSE_EVENT 退出,则 boost::log add_file_log 不会写入

    我使用的是 Windows 7 在控制台应用程序中使用 v1 54 中的 boost log 我使用带有旋转的 add file log 只要我的 main 函数退出 它就可以正常工作 但是 如果使用 powershell CloseMai
  • 如何在 JDBC 中启动事务?

    Connection setTransactionIsolation int warns 注意 如果在事务期间调用此方法 则结果是实现定义的 这就提出了一个问题 如何在 JDBC 中开始事务 如何结束交易很清楚 但如何开始交易却不清楚 If
  • 使用坐标以编程方式旋转形状

    如果我有一些使用坐标数组定义的形状 例如 30 30 30 30 30 30 30 30 和边缘定义使用 0 1 0 3 1 2 2 3 做一个正方形 如何以编程方式告诉形状在 JavaScript 中以 0 gt 359 的角度在中心旋转
  • Quickblox:删除内容项(图片文件/blob)时出现问题

    当我尝试删除以 PNG 图片文件形式存储在后端数据库中的内容项 用户的图片 blob 项 时 我遇到了一个奇怪的问题 删除过程没有错误 但给出 422 Unprocessable Entity 这是什么意思 在 Quickblox 管理面板
  • “代码 。”命令在命令提示符下不起作用

    使用 Angular cli 创建 Angular 应用程序后 我尝试使用 code 在 Visual Studio Code 中打开解决方案 命令提示符下的命令 但显示以下错误 有什么建议吗 如果您使用的是 Windows 请确保您的vs
  • Android:如何将蓝牙连接传递给另一个活动?

    我有我的第一个活动 其中建立了 BT 连接 有一个选项呈现给用户 并且根据他们的选择 将加载不同的活动 问题是 这两项活动都需要 BT 连接 而且我不认为为了建立另一个连接而破坏一个连接有什么意义 有没有办法可以传递活动之间的连接 有人给我
  • 当我运行程序时,LLDB 产生“数据包返回错误 8”

    我一直在尝试使用 LLDB 查找程序中分段错误的位置 我一直在使用 Ubuntu shellrepl it并使用编译我的代码clang 7 pthread std c 17 o main main cpp g并且程序编译成功 接下来 我跑l
  • Magento - 删除 1.4.2 中的愿望清单链接?

    以前在 Magento 中 使用以下内容添加愿望清单链接 在 Wishlist xml 中
  • 是否可以在运行时获取类型参数?

    我知道在 Java 中 由于擦除 我们在运行时没有参数化类型 但是是否有可能在运行时获取那些被擦除的参数呢 让我举一些例子 public class MyClass
  • Ruby 中的超级关键字

    这段代码中的 super 是做什么用的 def initialize options block filter options delete filter 1 super end 据我所知 这就像递归调用该函数 对吗 不 super 调用父